付属書の32 ページに次のように書かれています。
ブートストラップの問題があります。アロケータが空きリストを初期化するには、すべての物理メモリをマップする必要がありますが、これらのマッピングを使用してページ テーブルを作成するには、ページ テーブル ページを割り当てる必要があります。
理由がわかりません。rangeの場合[end,PHYSTOP)
のように、カーネルが からすべての 4K ページを埋めないのはなぜですか?struct run
[end,4M)
すべての物理メモリが既にマップされている必要があるのはなぜですか?