タグ

archとアドレスに関するItisangoのブックマーク (2)

  • Linux Insides : カーネル起動プロセス part3 | POSTD

    ビデオモード初期化とプロテクトモードへの移行 カーネル起動処理シリーズのパート3です。前回の パート では、 set_video ルーチンを main.c .から呼び出す直前までを扱いました。今回は、次の内容を見ていきます。 カーネルセットアップコードにおけるビデオモードの初期化 プロテクトモードに切り替える前の準備 プロテクトモードへの移行 注 プロテクトモードについてよく知らない場合は、前回の パート の内容を見てください。また、参考になる リンク も同ページに掲載しています。 上にも書いたように、 arch/x86/boot/video.c ソースコードファイルに定義された set_video 関数から始めましょう。内容を見ると、まずビデオモードを boot_params.hdr 構造体から取得することから始まるのがわかります。

    Linux Insides : カーネル起動プロセス part3 | POSTD
  • Linux Insides : カーネル起動プロセス part2 | POSTD

    カーネルセットアップの第一歩 前回の パート では、Linuxカーネルの内部について探り始め、カーネルをセットアップするコードの最初の部分を見ていきました。前回の投稿は arch/x86/boot/main.c 内の main 関数(C言語で書かれた最初の関数)を呼び出すところまで確認しました。 このパートでは、引き続きカーネルのセットアップコードについて調査し、併せて以下の内容も学びます。 protected mode (プロテクトモード)の概要 * プロテクトモードに移行するための準備 ヒープとコンソールの初期化 メモリの検出、CPUの検証、キーボードの初期化 その他もろもろ それでは始めていきましょう。 プロテクトモード ネイティブのIntel64の ロングモード に移行する前に、カーネルはCPUをプロテクトモードに切り替える必要があります。 では、この プロテクトモード とは何でし

    Linux Insides : カーネル起動プロセス part2 | POSTD
  • 1