[ipxe-devel] question about memory in ipxe
levail at aviatronic.hu
Fri Aug 10 19:54:22 BST 2012
I would like to understand memory usage in ipxe (I would like to
add some more powerful interpreter to ipxe). Studying the code
I have got the impression that "heap" in ipxe is a rather scarce
resource (128kB according to core/malloc.c). What are the limitations
to increasing heap size?
I also found out that images (the image data proper, that is) are
stored in a separate area, allocated by umalloc(). What is the exact
difference between memory allocated by umalloc() and heap memory?
A third kind of memory can be allocated from the stack (temporary
strings and arrays are typically allocated this way).
There is a separate kind of memory used by drivers for io buffers
(dma-able memory, means perhaps that
physical addresses == virtual address?).
Are there any documents I should look into or the source code is
the only documentation? What points should I study? What
are the gotchas?
Any help is most welcome.
More information about the ipxe-devel