java memory allocation with gcj

Andrew Haley aph@redhat.com
Thu Nov 5 09:23:00 GMT 2009


isuru herath wrote:
 > I am interested in studying how "new" allocates memory when running
 > as native binary. For this I wrote a simple Java class which just
 > create an int array. Then I generate the assembly with gcj -S
 > option. There I spotted the call to _Jv_NewPrimArray. Since the
 > result of the call is stored in eax register I check the value of
 > the eax register after this call. But it is giving a small number. I
 > tried the same thing with C. There I spotted the call to malloc and
 > check the eax after the malloc call and it has the same value as the
 > &variable_name has.
_Jv_NewPrimArray calls the memory allocator (actually part of the
Boehm garbage collector) which calls
mmap(NULL, size, PROT_READ|PROT_WRITE, MAP_PRIVATE, ..) to map
the memory.
Andrew.


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /