ページングモデル

Linuxはページング機能を持つCPUの空間管理方式を汎用化し,様々なCPUへの対応性を高めている。*1

Intel CPU版Linuxの空間管理も、セグメント機能は利用せずページング機能のみで実現している。(正確には、全てのタスクが、同じ4Gbyte空間のセグメントを共有している)

Alpha CPUではアドレス変換は、三段引きページテーブルとなっているため、Linuxでも三段のページテーブルまで対応できる作りになっている。それぞれ、PGD, PMD, PTE という名前がつけられている。Intel CPUではページテーブルは二段引きであるため、物理的なPMDは無く、仮想的な何もしないPMDを挟み込んである。

img59.gif

Intel CPUアーキティクチャでは、PGD,PTEは物理空間上に存在しなければならない*2。 Linuxカーネルがこれらを操作する時は、カーネル空間にストレートマップされた領域を通して行う。


 

(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST
1


  1. *1仮想化していると言っているが、実際は汎用化である
  2. *2VAXやMIPSでは仮想空間上にある