Linuxはページング機能を持つCPUの空間管理方式を汎用化し,様々なCPUへの対応性を高めている。*1
Intel CPU版Linuxの空間管理も、セグメント機能は利用せずページング機能のみで実現している。(正確には、全てのタスクが、同じ4Gbyte空間のセグメントを共有している)
Alpha CPUではアドレス変換は、三段引きページテーブルとなっているため、Linuxでも三段のページテーブルまで対応できる作りになっている。それぞれ、PGD, PMD, PTE という名前がつけられている。Intel CPUではページテーブルは二段引きであるため、物理的なPMDは無く、仮想的な何もしないPMDを挟み込んである。
Intel CPUアーキティクチャでは、PGD,PTEは物理空間上に存在しなければならない*2。 Linuxカーネルがこれらを操作する時は、カーネル空間にストレートマップされた領域を通して行う。
(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST