ダニエルとマルコによる「Linux カーネルの理解」のコースの一部として、Linux の「メモリ管理」を理解しようとしています。以下は、カーネル空間に関する私の理解です
- 32 ビット マシンでは、各プロセスに 4GB の仮想アドレス空間があります。3GB - ユーザー スペースと 1GB - カーネル スペース。
- 1 GB はプロセス間で共有され、1 GB の RAM に直接マップされます。このスペースは、カーネル コード、ページ テーブルなどを格納するために使用されます。
- 1 GB はスワップアウトできません。ただし、解放することはできます。
私の質問は、プロセスが必要とするカーネル スペースの合計が 1 GB を超えた場合はどうなるかということです。