Kernel Memblocks
My understanding :
Linux splits a memory node into memory banks. The banks are then logically divided into memory zones. Question : There is something called as memory blocks that are found in the bootup code (functions like memblock_init()). Can someone clear me what are these memory blocks and the relationship between memory banks and memory blocks. Regards, Prabagaran |
hi,
as far as i know it's really the boot loader that figures out the physical memory layout and passes that to the kernel. each memory bank -- that is physical memory -- is a "node". a bank or node is memory attached to a specific memory bus. more than one bank or node would be like a NUMA setup or something. each node is divided into 3 blocks called "zones". i think those things you see in memblock exist to allocate memory before the zone allocator is up and running. basically i think the whole node is reserved an then later freed to the zone allocator. again this stuff is kind of architecture specific and has changed over time. |
All times are GMT -5. The time now is 12:45 AM. |