アプリケーションソフト
ワープロソフト、テキストエディタ、ブラウザなど、 パソコンに仕事をさせるためのソフトウェアをアプリケーションソフトといいます。
ソフトウェアは本来、ハードウェアに依存します。 しかし、ハードウェアごとにソフトウェアを与えていたのでは非効率的です。 そのため、ソフトウェアは、ハードウェアに依存する部分とそうでない部分とに分けられます。
大雑把にいえば、ハードウェアに依存しない部分がアプリケーションソフトです。
ハードウェアに依存する部分も、さらにいくつかの部分に分かれていて、階層をなしています。 代表的なものとして、OS、デバイスドライバ、BIOSがあります。 後に挙げたものほど下の階層に位置し、ハードウェアへの依存度が高まります。
OS
OS(Operating System:オペレーティングシステム)は、 アプリケーションソフトがどのパソコンでも同じように動作するようにするためのソフトウェアです。
OSには、次のような役割があります。
- プロセスの管理
- デバイスの管理
- メモリ管理
- ファイルの管理
- システムコールの提供
- ユーザインターフェースの提供
それぞれの項目の詳細については省略します。
自作パソコンにインストールする代表的なOSはWindowsとLinuxです。
デバイスドライバ
デバイスドライバは、個々のデバイスの制御方法の違いを吸収するためのソフトウェアです。
デバイスドライバが仲立ちすることで、 オペレーティングシステムやアプリケーションソフトは個々のデバイスに依存しない手順でデバイスを制御することができます。
BIOS
BIOS(Basic Input Output System:バイオスと読みます)は、 マザーボード上のROMに書きこまれたプログラムです。
OSがハードウェアの制御するとき、 基本的にはBIOSの中の対応するプログラムを呼び出して実行します。 この仕組みによって、異なるパソコン上でも同じOSが利用できるわけです。
BIOSは本来、基本入出力システムとも呼ばれるように、 キーボードからの文字入力や画面への文字表示など、パソコンの基本的な入出力を行っていました。
現在のBIOSは、入出力を制御するだけでなく、 パソコンに内蔵されたハードウェアの情報をOSに伝えたり、 OSの指示に従ってBIOSが個々のハードウェアを制御するようになっています。
またBIOSには初期化プログラムと呼ばれる、電源投入直後に起動するプログラムがあります。 初期化プログラムは、ハードウェアを診断したり、OSを読み込んだりといった役割を持っています。
電源投入からOS起動まで
BIOSの初期化プログラムには、POST(Power On Self Test)と呼ばれるプログラムが含まれています。 POSTは、パソコンの電源を投入した直後に、
- メモリやハードディスクなどのデバイスの診断
- ハードウェアリソースの割り当て
を行います。
パソコンの電源を投入すると、 BIOSの中のPOSTプログラムが起動します。 その後、BIOSは、CPUに対して、 ハードディスクドライブの先頭にあるMBR(Master Boot Record)を読みに行くように命令します。
MBRにはブートローダと呼ばれるプログラムが格納されており、そのプログラム起動すると、 メインメモリにOSが格納されます。このとき初めて、OSが起動します。
ただし、ハードディスクドライブは、 パーティションと呼ばれる、論理的な複数の記録領域に分割する場合があります。 そして、OSが格納されているパーティションが複数存在することがあります。
ところが、BIOSはパーティションという論理的なものを認識することができません。 そのため、ハードディスクドライブの一番先頭にあるMBRを読みに行くようになっています。
OSが格納されているパーティションの先頭にもブートローダが格納されています。 そして、MBRには、どのパーティションのブートローダを起動したらよいかといったデータが格納されています。
MBRのブートローダは、指定されたパーティションに格納されたブートローダを起動します。 そしてパーティションのブートローダがOSをメインメモリに格納します。