web-dev-qa-db-ja.com

コンピュータはどのCD / DVDから起動するかをどのように知るのですか?

ユーザーがCD/DVDドライブのOSディスク(または他のブータブルディスク)を使用してシステムを再起動すると、実際にはどうなりますか?

たとえば、OSインストールCDを挿入してコンピューターを起動すると、"Press any key to continue from CD or DVD..."と表示されます。これは実際のCD/DVDでどのように行われますか?これは、CPUが再起動されるたびに、最初にCDドライブをチェックすることを示しているためです...

さて、私の質問は、CD/DVDがこれらのコンテンツをどのように配置して、通常のディスクとブータブル/ OSディスクであることを示すのかということです。コンピュータは起動時にそのようなディスクをどのように識別しますか?

10
Ant's

El Torito CD-ROM標準 は、CDからの起動を可能にするISO-9660仕様の拡張です。一部のOSインストールCD、Windowsはその一例です。これらの拡張機能を使用して、ユーザーがオペレーティングシステムを簡単にインストールできるようにします。コンピュータは、システムが起動可能なCDを起動するたびにCD-ROMドライブをチェックするように構成されている可能性があります。多くのCD書き込みアプリケーションには、ElTorito仕様を使用してCDを書き込むオプションがあります。

Windowsインストールディスクの場合、CDから起動するためにキーを押す必要がある場合があります。そうしないと、代わりにハードドライブから起動しようとします。 BIOSにアクセスして、システムの起動動作を変更できます。コンピュータのBIOSでシステムに変更を加えて、システムを起動できなくする可能性があります。ほとんどの場合、これは簡単に修復できますが、知識の少ないユーザーが回復するのに少し問題が発生する可能性があります。

11
cwawak

短期集中コース

コンピュータの電源がオンになると、BIOS(最初の実行である「単なる」別のプログラム)がメモリに読み込まれ、CPUによって実行されます。 (どのようにこれが行われるのかわかりません。申し訳ありません。)次に、設定に従って、必要な準備またはテストを実行します。設定されています。

これらの設定(誤って「BIOS」と呼ばれることもあります)は、コンピュータを起動するときに、たとえばを押して制御できる設定です。デルまたはF10。 BIOSが起動を許可するデバイスを指定します。

設定を読み取ると、BIOSは、各デバイスの最初のセクター(ほとんどのハードディスクではマスターブートレコード、または単に「セクター0」と呼ばれます)を読み取ろうとし、それを確認します。起動可能であり(16進数の0xAA55で終了する必要があります)、そうである場合は、セクターをメモリにコピーし、制御をデータの最初のバイトに転送します。その後、MBRはそれ自体で動作し、必要なものは何でもロードする必要があります。

多くの場合、ハードディスクの場合、これは、MBRがパーティションテーブルを解析してから、起動する必要があるアクティブパーティションの最初のセクターを読み取り、制御をthatセクター(ブートセクターと呼ばれます)。次に、ブートセクターはパーティションから必要なファイルを読み取り、オペレーティングシステムをロードするブートローダーを呼び出します。

もちろん、この最後の部分は不要です。デバイスのブートセクターは、必要なことを何でも実行できます。CDまたはDVDの場合は、何が起こっているかを管理する他の標準が用意されています。エルトリート。 BIOSから制御を取得した後は、デバイスごとに動作が異なるため、特定のタイプのデバイスについて知らなければ、その後に何が起こるかを言うのは困難です。

6
user541686
1
Nicu Zecheru