オペレーティングシステムは最初のコンピュータ世代からあり、時代とともに進化を続けています。 この章では、最も一般的に使用されているオペレーティングシステムの重要な種類のいくつかを説明します。
バッチオペレーティングシステム
バッチオペレーティングシステムのユーザーは、コンピュータと直接対話することはありません。 各ユーザはパンチカードのようなオフライン装置で自分のジョブを準備し、コンピュータ・オペレータに提出する。 処理を高速化するために、同じようなニーズを持つジョブはまとめてバッチ処理され、グループとして実行されます。 プログラマーは自分のプログラムをオペレーターに預け、オペレーターは同じような要求のプログラムをバッチに仕分ける。
バッチシステムの問題点は以下の通りである –
- ユーザーとジョブの間の相互作用が欠けていること。
- 機械的なI/Oデバイスの速度はCPUより遅いので、CPUはしばしばアイドル状態になる。
タイムシェアリング・オペレーティングシステム
タイムシェアリングとは、さまざまな端末にいる多くの人が、特定のコンピュータシステムを同時に使用できる手法のことである。 タイムシェアリングまたはマルチタスクは、マルチプログラミングの論理的拡張である。
マルチプログラムバッチシステムとタイムシェアリングシステムの主な違いは、マルチプログラムバッチシステムの場合、目的はプロセッサの使用を最大化することであり、タイムシェアリングシステムでは、目的は応答時間を最小化することです
複数のジョブがCPUによってそれらを切り替えることで実行されますが、切り替えは非常に頻繁に行われます。 したがって、ユーザは即座に応答することができる。 例えば、トランザクション処理では、プロセッサは各ユーザプログラムを短いバーストまたは量子の計算で実行する。 つまり、n人のユーザーがいれば、各ユーザーは時間量子を得ることができる。 ユーザーがコマンドを送信すると、応答時間はせいぜい数秒である。
オペレーティングシステムは、CPUスケジューリングとマルチプログラミングを使用して、各ユーザーに小さな時間の一部を提供する。
タイムシェアリングオペレーティングシステムの利点は以下の通りである。 –
- 迅速な応答という利点を提供する。
- ソフトウェアの重複を避ける。
タイムシェアリングOSのデメリットは以下の通りです。 –
- 信頼性の問題。
- ユーザープログラムとデータのセキュリティと整合性に疑問が残る。
- データ通信の問題
分散オペレーティングシステム
分散システムは、複数のリアルタイムアプリケーションと複数のユーザに対応するために複数の中央処理装置を使用します。 データ処理ジョブはそれに応じてプロセッサ間で分散される。
プロセッサはさまざまな通信回線(高速バスや電話回線など)を通じて互いに通信する。 これらは疎結合システムあるいは分散システムと呼ばれる。 分散システムにおけるプロセッサは、その大きさや機能が異なる場合がある。
分散システムの利点は以下の通りである。
- 資源共有機能により、あるサイトのユーザは他のサイトで利用可能な資源を利用することができる。
- 顧客に対するより良いサービス。
- ホストコンピュータの負荷軽減。
- データ処理の遅延軽減。
Network operating System
ネットワーク オペレーティング システムはサーバーで実行し、データ、ユーザー、グループ、セキュリティ、アプリケーションおよび他のネットワーク機能を管理する機能をサーバーに提供するものである。 ネットワーク オペレーティング システムの主な目的は、ネットワーク、通常はローカル エリア ネットワーク (LAN)、プライベート ネットワーク、または他のネットワークにある複数のコンピューター間で共有ファイルやプリンターのアクセスを可能にすることです。
ネットワーク オペレーティング システムの例としては、Microsoft Windows Server 2003、Microsoft Windows Server 2008、UNIX、Linux、Mac OS X、Novell NetWare および BSD があります。
ネットワークオペレーティングシステムの利点は以下の通りです –
- 集中型サーバーは非常に安定している
- セキュリティはサーバーで管理される
- 新しい技術やハードウェアへのアップグレードはシステムに簡単に統合できる。
- サーバーへのリモートアクセスは、異なる場所やシステムの種類から可能である。
ネットワークOSの欠点は次のとおりである –
- サーバーの購入と運用に高い費用がかかる。
- 定期的なメンテナンスとアップデートが必要。
リアルタイムOS
リアルタイムシステムは、入力に対する処理と応答に必要な時間間隔が非常に小さく、環境を制御するデータ処理システムとして定義されます。 システムが入力に応答し、必要な更新情報を表示するのにかかる時間を応答時間と呼ぶ。
リアルタイムシステムは、プロセッサの動作やデータの流れに厳格な時間要件がある場合に使用され、リアルタイムシステムは専用のアプリケーションの制御装置として使用することができる。 リアルタイムオペレーティングシステムは、明確に定義された固定的な時間制約を持たなければ、システムは失敗する。 例えば、科学実験、医療画像システム、産業用制御システム、兵器システム、ロボット、航空管制システムなど。
リアルタイムOSには2種類ある。
ハードリアルタイムシステム
ハードリアルタイムシステムは、重要タスクが時間通りに完了することを保証するものである。 ハードリアルタイムシステムでは、二次記憶装置が制限されているか、あるいはなくなっており、データはROMに保存される。
Soft real-time systems
Soft real-time systemsはあまり制約がない。 重要なリアルタイムタスクは他のタスクより優先され、完了するまでその優先順位が維持される。 ソフトリアルタイムシステムはハードリアルタイムシステムに比べ、実用性が限られている。 例えば、マルチメディア、バーチャルリアリティ、海底探査や惑星探査機などの先進科学プロジェクトなどです。