最新のカーネルにはブート時の最小メモリ要件がありますか?

最新のカーネルにはブート時の最小メモリ要件がありますか?

私は非常に古いコンピュータである16MB RAMを搭載したPentium MMXからソフトウェアをアップグレードしようとしています。現在2.4.37.11カーネルを実行しています。

2.4カーネルが実行するすべての操作を実行する最小の非モジュール式4.14カーネルを設定し、このカーネルから起動しようとしました。 LILOから起動すると、次の出力が生成されます。

boot: gentoo-4.14.3
Loading gentoo-4.14.3.................................
BIOS data check successful

この時点で画面が一瞬点滅してからシステムが停止します。

他のシステムで 32 MB の RAM を追加すると、4.14 カーネルが正常に起動し、free4 MB より少し多くの RAM を使用するカーネルが表示されます。起動中にカーネルに特定の最小RAM容量が必要ですか?

答え1

最新のカーネルには最小メモリ制限はありません。必要(またはある場合は16MB未満です。)彼らが持っているのは最小限の記憶だけです。住所

カーネルの初期の歴史ほとんどの場合、x86カーネルはデフォルトで特別に処理された最初のRAMメガバイトのすぐ上の物理メモリアドレス0x100000にロードされました。 2.6シリーズ以降、構成シンボルを介してCONFIG_PHYSICAL_STARTさまざまなロードアドレスを設定する機能が追加されました。

したがって、競合は、システムがメモリの上部を通過する物理アドレス0x1000000からカーネルをロードしようとするために発生します。想像できるように、これはうまくいきませんでした。カーネルのバージョンによっては、変更CONFIG_PHYSICAL_START(変更メニュー(「カーネルをロードする必要がある物理アドレス」と呼ばれる))または関連CONFIG_PHYSICAL_ALIGN(「カーネルをソートする必要があるソート値」と呼ばれる)です。

関連情報