| 汎用 OS | 組込み OS | リアルタイム OS | |
|---|---|---|---|
| 用途 | ソフトをインストールして汎用的な目的に使う | 特定の目的に特化 | 時間の保証が必要な機器 |
| ハードウェア | キーボード、ディスプレイ、スピーカ、マウスなど数多く | 炊飯器にキーボードはついていない | 用途による |
| メモリ | 数 GB | 数 GB は載っていない | 用途による |
| CPU | 複数コア | 1 つだけのものが多く、性能は著しく劣る | 用途による |
| 特徴 | 全コンピュータのほんの数パーセントにすぎない | 電子レンジ、空調などの家電製品の多くに載っている | アプリに優先度をつけてリアルタイム性を保証する |
リアルタイム性が命に関わる例。 車のブレーキはコンピュータで制御されています。 ブレーキを踏んだら、必ず非常に短い一定時間以内に効くことが保証されなければ大事故になります。 医療機関で使われる機器も同じです。 パソコンの OS には、処理にかかる時間の保証はありません。
| OS | 由来と特徴 |
|---|---|
| Windows | Microsoft 社。1985 年に最初のバージョン。名前は複数のウィンドウを扱えることに由来。 1995 年の Windows 95 がインターネット接続機能を標準で備え、世界的ヒットに。デスクトップでトップシェア |
| macOS | Apple 社。洗練されたユーザインターフェース、音楽・映像分野のアプリが充実。熱心なファンが多い。 派生として iPod、iPad、スマートフォン向けの iOS |
| Android | Google 社。スマートフォンやタブレット型パソコン向け |
| UNIX | 1969 年、AT&T ベル研究所。当初は大学や研究所のコンピュータの OS として普及。 CUI の習熟が要るため一般ユーザにはあまり普及せず。オープンソースのものが数多くある |
| TRON | 1984 年、日本で仕様が作られたオープンソースの OS。 パソコン用の BTRON(⇒ 超漢字)、組込み機器用の ITRON など。 ITRON は組込み機器用 OS として世界的にも大きなシェアを占める |
第 2 回で見た 4 種類の割込み(タイマー割込み・内部割込み・ハードウェア割込み・0 割り算割込み)は、 OS の中核機能を支えています。とくにタイマー割込みは、 このあと出てくるプロセスの切り替えに欠かせません。
OS はメモリを、番地が並んだひとつづきの空間として管理します。 アプリを起動すると必要なぶんを割り当て、終了すると解放します。 不動産屋さんのような仕事です。
色のついた領域をクリックすると、そのプロセスが終了して解放されます。 そのあと、大きなプロセスを新しく起動してみてください。
実際に搭載されているメモリを物理メモリといいます。 これに対し、OS は各プロセスに、物理メモリより広いメモリ空間があるかのように見せます。これが仮想メモリです。
物理メモリに収まらないぶんは、補助記憶装置へ追い出します。これがスワップアウト。 必要になったら書き戻します。これがスワップインです。
仮想メモリのページをクリックすると、そのページを使おうとします。
プログラムは、必要に応じてメモリに読み込まれ、プロセスとして実行されます。 情報処理の単位をプロセス(process)またはタスク(task)といいます。
複数のプロセスが並行して実行されることをマルチプロセスまたはマルチタスクといいます。 (Windows では Ctrl+Shift+Esc でタスクマネージャを開くと、実際のプロセスの一覧が見られます。)
| 用語 | 意味 |
|---|---|
| コンテキストスイッチ | プロセスの実行を切り換えること。タイマー割込みを使い、数ミリ秒単位で行う |
| タイムシェアリングシステム | あたかも複数のプロセスが同時に実行しているかのように見せかけること |
| スケジューリング | プロセスへ実行を割り当てる方式 |
| プロセス管理 | プロセスを生成し、スケジューリングして、プロセスを管理する機能 |
OS の中で入出力処理を行う部分を入出力管理といい、 周辺装置を用いて入出力処理をするプログラムをデバイスドライバ(Device Driver)といいます。
| 用語 | 意味 |
|---|---|
| カーネル(Kernel) | これまで紹介した OS の機能の中核部分 |
| シェル(Shell) | ユーザと OS が情報交換できるソフトウェア。「殻」の意味 |
| コマンド(Command) | ユーザが OS に送る命令 |
| ユーザインターフェース | ユーザと OS の境目に位置するソフトウェア。コンピュータの使い勝手を示す |