情報系総合質問スレ
■ このスレッドは過去ログ倉庫に格納されています
0761名無しさん@お腹いっぱい。
2009/06/23(火) 12:02:10ID:AwVHjOPiO>>755
PCの電源をONするとROM上の特定アドレスにある初期化プログラムに飛ぶ。
ここでPCのBIOS初期化が行われるが、同時にこの段階でビデオカードや通信機器等の初期化も行われる(POST:PowerOnSelfTest)
厳密にはこれら周辺装置の初期化プログラムはボード上のROM内容がPCのRAMアドレスにマッピングされているため、PCのBIOSプログラムと同様に機能する。(BIOS:BasicI/OSystem:基本入出力機構)
こうしてPC内部の初期化が完了するとBIOSはディスク装置から挿入されているディスクのブートセクタを探して、ここに記録されているIPL(InitializeProgramLorder)をメモリに読み込み、このプログラムを実行する。
IPLはもっと巨大な初期化プログラムを読み込むための必要最小限かつ基本的な機能しか持っていない。
パーティションで区切られたHDD装置はプログラム的に複数のディスク装置として使えるようにするため、複数のブートセクタ及びIPLを持っている。
そのためMBR(MasterBootRecord)と呼ばれる領域をディスク装置の先頭に記録しておき、ここの情報を見て任意のドライブからブートできるようになっている。
どのディスク装置からブートするかの優先順位は予め設定等によりPC内部の不揮発RAMに記録してある。
こうしてIPLが読み出すのはOSにもよるがデバイスドライバ及びカーネルである。カーネルはアプリケーションからのシステムコールをPCのBIOSやデバイスドライバが実行できる形式のリクエストに組み換えて橋渡しする。
こうして内部の状況が整ったらシェルが読み込まれ、その初期化ルーチンに移行する。OSにもよるが、ユーザー認証を行うのはこの時点だ。
ユーザー認証から実行できるタスクが限定され、稼働させておくべきアプリケーションも呼び出され待機状態となる。
一般にPCが立ち上がったといえるのはこの時点だ。
■ このスレッドは過去ログ倉庫に格納されています