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

メモリマップ


仮想アドレス
0x00000000	+-----------------+ -- User Area (プロセス毎に多重化)
		| .text,.data.bss |
		|                 |
		|                 |
0x40000000	+-----------------+
		| 共有ライブラリ  |
		+-----------------+
		|                 |
		|                 |
		+-----------------+
		| User Stack      |
0xc0000000	+-----------------+ -- Kernel Area  --> 物理アドレス0x00000000にストレートにマッピングされる
		| Kernel          |			PTEの設定は起動時にpagetable_init()で行う。
		|                 |			(物理メモリ管理.txt参照)
		|  KernelStack    |
		| (プロセス毎に   |
		|  複数)          |
		|                 |
		|                 |
		+-----------------+
		| 128MB 予約      | ここは、動的に物理Pageにマッピングされる
		| vmalloc等       |
0xffffffff	+-----------------+



-------------- boot時は... ---------------------

setup_arch()で行っているbootmem allocatorの初期化についても。。。
init_bootmem

最終更新 2006/03/27 14:11:47 - kztomita
(2006/03/27 14:11:47 作成)


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