Linux Kernel(2.6)の実装に関するメモ書き

64bitでのアドレス空間


Rev.2を表示中。最新版はこちら

x86_64環境でのアドレス空間(Kernel 2.6.30)



図1 x86_64でのアドレス空間

ユーザ空間は0x0000000000000000〜0x00007fffffffffff。

カーネル空間は0xffff800000000000以降を使用する。カーネル空間の0xffff880000000000〜は搭載物理メモリの分だけ物理メモリにストレートマップされる。64bit環境では、仮想アドレス空間が広いので物理メモリ全体をストレートマップできるため、LowMemoery/HighMemoryの区別はない。

0xffffc20000000000以降はストレートマップされない領域になる。ここはvmallocで確保した領域などに使われる。


関連ページ

カーネル空間のメモリマップ



最終更新 2010/12/26 14:36:11 - kztomita
(2010/12/26 14:26:52 作成)
添付ファイル
map64.jpg - kztomita


リンク
最近更新したページ
検索