C言語で0から作るOSを開発について説明していきます。このシリーズではカーネルの開発について説明しています。 今回は仮想アドレス空間を制御するページングについてです。ページングはPTE(ページテーブルエントリー)とPDE(ページディレクトリエントリー)を設定して制御します。 【注意】本書はプロセスの仮想アドレス空間管理についての説明まではしていません。OS起動時のページング設定に留めています。プロセスの仮想アドレス管理についてはプロセス管理で説明していきます。 [目次] 前回までの内容 物理メモリー管理の限界 仮想メモリー 仮想アドレス空間 MMU(Memory Management Unit:メモリー管理ユニット) TLB(Translation Lookaside Buffer:アドレス変換バッファ) ページ ページング ページと物理アドレス ページテーブルエントリー(PTE:Page Table Entries) PTEを実装してみる ページテーブル ページディレクトリエントリー(PDE:Page Directory Entries) PDE PDEの実装 ページと仮想アドレス 仮想アドレスから物理アドレスへの変換 マルチタスクとメモリー空間 仮想メモリー管理 カーネルを0xC0000000で動かす方策その1 カーネルを0xC0000000で動かす方策その2 カーネルを0xC0000000にロードする簡単な例 仮想メモリー管理の実装 ページ領域と物理領域の割り当てと解放 仮想メモリーアドレスからPTE、PDEを取得する ページディレクトリの読み込み TLBをフラッシュする 仮想メモリーと物理メモリーの紐付け 仮想メモリー管理初期化 ページングを有効にする ページフォルト
Populaire auteurs
Cram101 Textbook Reviews (948) J.S. Bach (447) Wolfgang Amadeus Mozart (305) Collectif (268) Schrijf als eerste een recensie over dit item (259) Doug Gelbert (238) Princess of Patterns (211) Charles Dickens (209) R.B. Grimm (197) Carolyn Keene (187) Jules Verne (183) Philipp Winterberg (180) William Shakespeare (174) Youscribe (172) Lucas Nicolato (169) Edgar Allan Poe (166) Herman Melville (166) Anonymous (165) Gilad Soffer (164) Robert Louis Stevenson (159)Populaire gewichtsboeken
418 KB 425 KB 435 KB 459 KB 445 KB 439 KB 386 KB 413 KB 493 KB 432 KB 455 KB 471 KB 421 KB 451 KB 485 KB 472 KB 416 KB 369 KB 419 KB 427 KB