10.2. メモリーの管理
10.2.1. 64 ビット ARM に 52 ビット PA が利用可能
この更新により、64 ビット ARM アーキテクチャーの 52 ビット物理アドレス指定 (PA) のサポートが利用可能になり、以前の 48 ビット PA よりも大きな物理アドレス空間が提供されます。
10.2.2. 5 レベルのページテーブル x86_64
RHEL 7 では、既存のメモリーバスには 48/46 ビットの仮想/物理メモリーアドレス容量があり、Linux カーネルが 4 つのレベルのページテーブルを実装して、物理アドレスへの仮想アドレスを管理します。物理バスのアドレス線は、物理メモリーの容量の上限を 64 TB に制限します。
これらの制限は、128 PiB の仮想アドレス空間 (64 PB ユーザー/64 PB カーネル) と 4 PB の物理メモリー容量で、57/52 ビットの仮想/物理メモリーアドレス指定に拡張されます。
拡張されたアドレス範囲により、RHEL 8 のメモリー管理は 5 レベルのページテーブル実装のサポートを追加します。この実装では、最大 128 PiB の仮想アドレス空間と 4 PiB の物理アドレス空間で、拡張されたアドレス範囲を処理できます。
5 レベルのページテーブルは、取り付けられている物理メモリーが 64 TiB 未満であっても、この機能をサポートできるハードウェアではデフォルトで有効になっています。メモリーが 64 TiB 未満のシステムでは、5 レベルのページテーブルを移動する場合にオーバーヘッドがわずかに増加します。このオーバーヘッドを回避するには、no5lvl
カーネルコマンドラインパラメーターを使用して 5 レベルのページテーブルを無効にし、強制的に 4 レベルのページテーブルを使用するようにできます。
10.2.3. スワッピングアルゴリズムの変更
RHEL 8 では、Linux カーネルアルゴリズムの仮想メモリー管理が更新されています。これにより、以前のバージョンと比較して、匿名メモリーページ (プロセスデータ) がディスクにスワップされる頻度が高くなる可能性があります。これらの変更は、最新のソリッドステートドライブ (SSD) のパフォーマンスへの影響が、回転式ディスクに比べて大幅に低いために行われました。RHEL 8 への移行時に最適なシステムパフォーマンスを確保するには、システムの swappiness 設定を評価し、必要に応じて調整することを推奨します。