【发布时间】:2016-05-31 15:13:58
【问题描述】:
我正在使用 Linux 内核,并希望在启动时(在内核空间中)静态分配子页面大小的数组,稍后将由内核用于调度目的。谁能指出我这样做的最佳方式?
在操作系统正常执行期间永远不会显式释放此内存,除非在结束时隐式释放(关闭)。
我已经知道alloc_bootmem(),但我也想知道/探索其他可能性。如果有人能指点我一段使用内存的方式与 Linux 内核中已经存在的类似方式的 sn-p 代码,那就太好了。
【问题讨论】:
-
Kmalloc() 怎么样
-
这看起来也是一个不错的选择。在内核源代码中,通常会在启动时调用 kmalloc() 进行分配?
-
您在谈论启动时间或运行时间具体是什么?
-
我想在启动时分配,因为它可以在调度程序执行操作系统期间的任何时间使用。
-
FIXMAP 在你的情况下可能是一个关键字。
标签: c memory linux-kernel