オペレーティング システム
オペレーティング システム (OS) とは、コンピュータのリソース、特に他のプログラム間でのリソースの割り当てを管理するプログラムのことである。 典型的なリソースには、中央処理装置 (CPU)、コンピューター メモリ、ファイル ストレージ、入力/出力 (I/O) デバイス、ネットワーク接続などがあります。 管理作業には、プログラム間の競合や干渉を避けるために、リソースの使用をスケジューリングすることも含まれます。
? マイクロソフト社製のオペレーティングシステムは何でしょうか?
最新のマルチプロセッシング オペレーティング システムでは、多数のプロセスがアクティブになり、各プロセスはプログラムの実行に使用される計算の「スレッド」です。 マルチプロセシングの 1 つの形式はタイム シェアリングと呼ばれ、多くのユーザーがコンピュータへのアクセスを共有できるように、それらの間で高速に切り替わります。 この場合、プログラムが使用するメモリ(アドレス空間)は、すぐに使用しないときは二次メモリ(磁気ハードディスクドライブなど)に置き、必要に応じて高速なメインメモリにスワップバックさせることができる。 この仮想メモリは、プログラムが使用できるアドレス空間を増やし、プログラム同士の干渉を防ぐのに役立つが、オペレーティングシステムによる慎重な制御と、メモリの使用状況を把握するためのアロケーションテーブルのセットが必要である。 各プロセスは、1秒の何分の一かの限られた時間だけCPUを使用することを許可され、その後は次の順番が来るまで制御を放棄して中断しなければならないのです。 プロセス間の切り替えは、プロセスのすべてのデータを保護しながら、それ自体で CPU を使用しなければなりません。
最初のデジタル コンピューターにはオペレーティング システムがありませんでした。 最初のオペレーティング システムは、1950 年代半ばに開発されました。 これは、基本的なI/O操作(パンチカードリーダーやプリンターの制御など)を行い、課金のためにCPU使用率を記録する小さな「スーパーバイザープログラム」であった。 また、スーパーバイザー・プログラムは、複数のプログラムを同時に実行するマルチプログラミング機能も備えていた。
コンピューターは、1960 年代に、CPU 時間と端末を共有する複数のユーザーを管理するシステムが必要なタイム シェアリングの出現により、より強力なオペレーティング システムを獲得しました。 初期のタイムシェアリングシステムは、マサチューセッツ工科大学で開発された CTSS (Compatible Time Sharing System) と、ダートマス大学で開発された Dartmouth College Basic System の 2 つです。 このほか、イギリスのマンチェスター大学のアトラス、IBMのOS/360など、マルチプログラムシステムは、おそらく1960年代で最も複雑なソフトウェアパッケージであったと思われます。 1972年以降、ゼネラル・エレクトリック社のGE 645コンピュータ(後にハネウェル社のコンピュータ)用のマルチックスシステムが最も洗練されたシステムとなり、後に標準となったマルチプログラミングとタイムシェアリングの機能のほとんどを備えていました。 今すぐ購読する
1970年代のミニコンピュータはメモリが限られていたため、より小さなオペレーティングシステムが必要でした。 この時代の最も重要なオペレーティングシステムは、AT&T が Multics に代わるよりシンプルなものとして大型ミニコンピュータ向けに開発した UNIX でした。 1980年代に広く使われるようになったのは、大学に無料で提供されたことと、熟練したプログラマーの手にかかると強力なツール群を備えて設計されたからである。 最近では、フィンランドのコンピューター科学生 Linus Torvalds が率いるグループと、アメリカのコンピューター・プログラマー Richard Stallman が率いるグループが開発したオープンソース版の UNIX である Linux が、大型コンピューターだけでなくパーソナルコンピューターでも普及しています。
こうした汎用システムに加えて、組み立てラインや航空機、さらには家電製品を制御する小型コンピューターで稼働する特殊目的の OS も存在しています。
このような汎用OSのほかに、組立ラインや航空機、家電製品などを制御する小型コンピュータには、特殊用途のOSが搭載されている。 また、スマートフォンやタブレット端末などのモバイル機器向けにも、OSが開発されている。
ユーザーまたはアプリケーション プログラムの立場から、オペレーティング システムはサービスを提供します。 これらの中には、ディスク上のファイルを表示する「dir」のような単純なユーザー コマンドもあれば、画像を表示するためにグラフィック プログラムが使用するような低レベルの「システム コール」もあります。 どちらの場合でも、オペレーティングシステムは、そのオブジェクトへの適切なアクセス、つまり、ある場合にはディスクの位置のテーブル、別の場合にはデータを画面に転送するルーチンを提供します。
パーソナル コンピューターの現代のオペレーティング システムでは、一般にグラフィカル ユーザー インターフェイス (GUI) が提供されます。 GUI は、Apple の Mac OS や Microsoft Corporation の Windows OS の古いバージョンのように、システムの本質的な部分である場合もあれば、UNIX の X Window システムや Apple の Mac OS X のように、基本システムに依存した一連のプログラムである場合もあります。