是否可以在Linux内核中分配大量内存,例如64 MiB?
答案 0 :(得分:1)
你不能在单个kmalloc()或其他内存分配例程中的linux内核代码中分配64 MB内存。它的有限&拱依赖。
您可以使用启动时内存分配技术来实现。你可以参考http://www.xml.com/ldd/chapter/book/ch13.html
答案 1 :(得分:0)
您使用的是哪种引导加载程序?我认为在引导加载程序中,一些引导参数可以传递给Linux Kernelm,例如“mem = 1000MB”。然后,您可以使用此参数在高端保留一定量的内存。内核启动后,内核模块或用户空间进程可以使用此保留的内存区域来实现简单的堆管理。没有其他人会触及这个区域。但bootmem只能在内核启动时使用,将在内核启动后释放。这不是你想要的。