在Linux内核中分配内存区域的任何固定比率(如ZONE_DMA)应该在0-16MB之间,ZONE_NORMAL在16-896 MB之间,或者我们可以根据我们的需求进行更改,如果是的话,如何?
问问题
1719 次
1 回答
0
Those memory zones are defined based on hardware limitations. Even if recompile the kernel with a larger ZONE_DMA then devices which do 16-bit DMA will just fail. Same for DMA32 on 64bit.
In theory perhaps you could shrink some of the zones, but I'm not sure you have a reason for it. AFAIK normal allocations can automatically overflow into the DMA zone.
If you want more than 1G kernel memory then you need to change some top-level config options, not sure which.
于 2012-11-20T10:27:48.590 回答