Linux カーネルに 64 MiB などの大きなメモリを割り当てることはできますか?
質問する
1149 次
2 に答える
1
単一の kmalloc() またはその他のメモリ割り当てルーチンで、Linux カーネル コード内に 64 MB のメモリを割り当てることはできません。その限定されたアーチに依存します。
これは、起動時のメモリ割り当て手法を使用して行うことができます。http://www.xml.com/ldd/chapter/book/ch13.htmlを参照できます
于 2013-03-25T10:15:42.423 に答える
0
どのようなブートローダーを使用していますか? ブートローダーでは、「mem=1000MB」など、いくつかの起動パラメーターを Linux カーネルに渡すことができると思います。次に、このパラメーターを使用して、ハイエンドで一定量のメモリを予約できます。カーネルの起動後、カーネル モジュールまたはユーザー空間プロセスは、この予約済みメモリ領域を使用して単純なヒープ管理を実装できます。他の誰もこの領域に触れません。ただし、bootmem はカーネルの起動中にのみ使用でき、カーネルの起動後に解放されます。これはあなたが望むものではありません。
于 2013-03-25T10:51:46.217 に答える