私は現在、オペレーティングシステム試験のために勉強しています。これには、ページテーブルに関するいくつかの基本を学ぶことが含まれ、この質問につながりました。階層ページテーブルを使用するのはなぜですか?ページテーブルの各エントリのアクセス制御ビットは約1バイトを占めます。その他のソースまた、ページごとに1バイトが言及されています。
しかし、階層ページ・テーブルのアクセス制御ビットにはどのような情報が含まれていますか?
tfinley.net話す:
- 有効なビット
- 汚い
- 読むことができる権限がありますか?
- 書く
- 実装する
これにより5ビットになります。しかし、ソースがあまり良くないと思います。それでも3ビットがありません。
~によるとゲイリースーツ4ビットの追加情報(有効ビット、rwx)。
誰かがアクセス制御ビットに何があるのか教えてもらえますか?ソースを持っているのが最善です。
問題は実際のシステムによって変わることがあると思います。私はあなたが理解してソースを持っているシステムに満足しています。
答え1
この回答はIA-32アーキテクチャに関するものです。情報紙を持ってきました。Intel IA-32アーキテクチャソフトウェア開発者マニュアル, ページ1751/3044(!):
表4-6 4KBページをマッピングする32ビットページテーブルエントリの形式:
- 0(P):4 KBページをマッピングするには1でなければなりません。
- 1(R / W):読み取り/書き込み、0の場合、エントリが参照する4KBページへの書き込みは許可されない可能性があります(セクション4.6を参照)。
- 2(U / S):ユーザー/スーパーバイザー、0の場合、このトピックで参照されている4 KBページへのユーザーモードアクセスは許可されません(セクション4.6を参照)。
- 3(PWT):ページレベルの連続書き込み、このトピックで参照されている4 KBのページにアクセスするために使用されるメモリの種類を間接的に決定します(セクション4.9を参照)。項目(セクション4.9参照)
- 4(PCD):ページレベルのキャッシュが無効になります。このトピックで参照される4KBページにアクセスするために使用されるメモリの種類を間接的に決定します(セクション4.9を参照)。
- 5(A):アクセス済み、ソフトウェアがこのトピックで参照されている4 KBページにアクセスしたかどうかを示します(セクション4.8を参照)。
- 6(D):ダーティ。ソフトウェアがこのトピックで参照されている4 KBページに記録されているかどうかを示します(セクション4.8を参照)。
- 7(PAT):PATがサポートされている場合は、このトピックで参照されている4 KBページにアクセスするために使用されるメモリの種類を間接的に決定します(セクション4.9.2を参照)。それ以外の場合は予約済み(0でなければなりません)
- 8(G):グローバル、CR4.PGE = 1の場合、変換がグローバルかどうかを決定します(セクション4.10を参照)。
- 11:9: 無視
- 31:12: このエントリが参照する4KBページの物理アドレス