Re: 2 questions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Michael Gong writes:

 > They are not related with gcc. But since gcc's developers are all 
 > experienced developers and willing to help, I would like to post my 
 > questions here.

OK, but please don't overdo it.

 > 1. when is the local static variable of a function get allocated ? Is it 
 > during the system startup or when the function is called ?

It's allocated by the compiler, at compile time, long before the
program is even started.

 > 2. where does the memory used by malloc() come from ? I know they are 
 > from heap. So what's the memory of heap come from ?

There are two ways, the old and the new.

The old is via sbrk(2).  Ths extends the data segment of a program.

The new is via mmap(2).  mmap("/dev/zero", len) allocates zeroed pages
of memory.

The man pages tell you how to use these.

Andrew.

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux