Linuxハッカーを目指す技術者に役立ちそうな技術ドキュメント「Linux internals」の第3部が公開されています(Hacker News)。前回紹介したカーネルブートプロセス第2部の続編となるドキュメントで、ビデオモードの設定、プロテクトモードへ移行する前に必要となる準備、プロテクトモードへの移行などを解説する資料となっています。
内容をみていくと、まずビデオモード関して、arch/x86/boot/video.c のset_video関数の概要紹介を手始めに、Kernelのデータタイプや、Heap APIの説明を経て、Linuxが実際にどのようにビデオモードを設定してるかを解説。その後Interrupt Descriptor Table、Global Descriptor Tableのセットアップ方法や、実際にプロテクトモード移行する方法を説明しています。
次回は、プロテクトモードに移行して最初にどのような処理が行われるか、さらにロングモードへ移行する方法が解説される予定となっています。