第1回勉強会 : 新装改訂版 Linuxのブートプロセスをみる 2014.11.21 - ShigaLinux/LinuxBootProcess GitHub Wiki
概要
http://connpass.com/event/9835/
- 2014/11/21(金)
- 19:00 〜 21:00
- 大津市ふれあいプラザ 大津市浜大津四丁目1番1号明日都浜大津
このページの使い方: 目次に沿って、事前に疑問とかネタとか議論したいこととか、名前とともにメモっておいてください。
タイムテーブル
- 19:00 - 19:30 自己紹介、勉強会の趣旨説明。
- 19:30 - 20:45 1章ざくっと。雰囲気にまかせて強引に1章を進めます。
- 20:45 - 21:00 かんたんな振り返りと、次回予定日決定
結論
読めた。 次回:Linuxカーネル2.6 解読室。 ふわっとざくっと読む。気になったことはその場またはその場までにメモる。 次々会:12ステップで作る組込みOS自作入門
第1章 ハードウェア
- 徳:懐かしのキーワード:「起動ディスクでフォーマットする」「LILO」
1.1 本書の目標
1.2 CPUの動作モード
1.2.1 リアルモード
1.2.2 プロテクトモード
1.2.3 仮想8086モード
1.2.4 64bitモード
1.2.5 互換モード
1.2.6 リアルモードからプロテクトモードへの移行
1.2.7 プロテクトモードからリアルモードへの移行
1.2.8 IA-32モードからIA-32eモードへの移行
1.2.9 IA-32eモードからIA-32モードへの移行
1.3 レジスタ
1.4 メモリ管理
1.4.1 セグメント
1.4.2 リアルモードのセグメント
1.4.3 プロテクトモードのセグメント
1.4.4 64bitモードのセグメント
1.4.5 ページング
1.4.6 ページングのアドレス変換
1.4.7 ページディレクトリとページテーブル
1.4.8 64bitモードのページング
1.4.9 TLB
1.5 保護機能
1.5.1 特権レベル
-(徳)このページが仮想化で特権レベル1・2が使われるという件について。このページが参考になった。
1.5.2 特権命令
1.5.3 セグメントへのアクセス
1.5.4 ページフレームへのアクセス
1.6 割り込みと例外
1.6.1 割り込みの発生源
1.6.2 例外の発生源
1.6.3 割り込みと例外のベクタ
1.6.4 割り込みのマスク
1.6.5 リアルモードの処理
1.6.6 プロテクトモードの処理
1.6.7 64bit モードの処理
1.7 外部機器との入出力
1.7.1 I/O ポートのアドレス
1.7.2 I/O命令
1.7.3 Memory Mapped I/O
1.7.4 I/O アクセスの保護
1.8 PC/ATアーキテクチャ
1.8.1 予約されたアドレス領域
1.8.2 1MB 以上のメモリ
1.8.3 A20
1.8.4 割り込みコントローラ
1.8.5 BIOS
第2章 ブートローダからカーネル起動
2.1 ブートの概要
2.2 ブートローダ
2.2.1 いろいろなブートローダ
2.2.2 ソースコードについての注意
2.3 GRUB2のMBR
2.4 GRUB core
2.5 GRUB kernel
第3章 圧縮カーネルの解答
3.1 解凍ルーチン概要
3.2 セグメント・レジスタの初期設定をおこなう
3.3 64bitモードに移行する
3.4 プログラムを移動する
3.5 圧縮カーネルの解凍
第4章 startup_64ルーチン
### 4.1 64bitカーネルのメモリマップ