0

在Linux内核中分配内存区域的任何固定比率(如ZONE_DMA)应该在0-16MB之间,ZONE_NORMAL在16-896 MB之间,或者我们可以根据我们的需求进行更改,如果是的话,如何?

4

1 回答 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 回答