オペレーティングシステムの私のレビュー - OSの概要

  私は知識の特定の種類を学ぶことが最大の駆動力は、既存の知識は時に好奇心、現在の問題を解決するには不十分であると感じたときに、ということであると感じています。完全にシステムの底オフに。オペレーティングシステムは、UNIXに仮想マシンを開始したから今日は、知識の基盤となるシステムの包括的な見直しを開始しました。私は彼が自身の言葉で、事の本質を得ることがしたいです。

まず、オペレーティングシステムは何ですか

  どのようなコンピュータですか?、はっきりハードウェアに加えてソフトウェアのコレクションをそれを置くために。どのようなオペレーティングシステム?これは、ソフトウェアの基盤となるハードウェア層の大部分を操作しています。あなたがより簡単にそれを使用することができるように、オペレーティング・システムでは、我々はいわば、とコンピュータの契約を聞かせて、外部入力などのバイナリ情報1010を必要としない、リソースのコンピュータのハードウェア、オペレーティングシステムの集合であり、これらのリソースが封入されています。

  コンピュータリソースは、それがはっきりと、CPU、メモリ、入出力デバイスを指し、プロセッサ、メモリ、I / Oデバイスと情報(データやプログラム)は、引数の教科書によれば、4つのカテゴリに分けることができるため(マウス、キーボード、モニターなど)、ハードドライブとハードディスク上のソフトウェア。オペレーティングシステムは、コンピュータのハードウェアシステムをカプセル化、およびオペレーティングシステムの機能であるコンピュータリソース、の4種類を管理します。理解しやすいです。

 

第二に、オペレーティングシステムの開発プロセス

  オペレーティングシステムの開発プロセスは非常に重要であり、それは技術の向上、最も重要な役割は、現在の変化のために最も緊急に必要であるものを変更することであることを認識することを可能にします。

  ここではいくつかの言葉で、オペレーティング・システムの開発プロセスについて教えてください。

(1)マニュアルモード。

  伝説的なテープ操作。テープ入力(I / O)を介してプログラムやデータの最も簡単なテープに記録し、コンピュータ(メモリ)には、次に、コンピュータが実行されています。この時点で、私たちは、コンピュータI / O情報(ハード・ディスク・プログラム、データ)は、簡単なストレージおよび転写紙によって引き起こされていることがわかります。もちろん、速度が遅いです。

(2)オフライン入力/出力。

  コンピュータがメモリにテープから、プログラムや情報を実行しているときにこれがテープとの関係をオフすることはできませんが、テープは、テープ上の情報にプリロードされている、と。もちろん、これは大幅に速度を向上させます。我々は、それがハードディスクではなく、テープ上の簡単なハードドライブ、プログラムやデータを追加するコンピュータに意味、このように、見ることができます。

(3)単一のバッチ処理システムのチャネル。

  これは、最初のオペレーティングシステムです。CPU制御「の監視手順は、」メモリにテープ上のジョブ(プログラムおよびデータ)も、それを実行し、メモリに次のジョブを呼び出し、それを実行します。これは、順番に、テープ上のジョブを実行します。時のシステムメモリのみ1つのプログラム実行中、CPUのみのシングルスレッド処理されたIOの再処理プログラムサイクル。

(4)マルチバッチシステム。

  これは非常に効率的なオペレーティングシステムです。ユーザーは複数のメモリに、スケジューラジョブをジョブを送信し、ディスク上のキューに配置されました。ジョブの実行がブロックしていない、IO要求が発生した場合は、いないCPUはアイドル状態ですが、CPUがメモリに他のジョブを実行できるようにします。これは、順番にできるだけ占有CPUとその他のシステムリソースを保ち、各ジョブを実行します。

(5)タイムシェアリングシステム。

  これは、各ユーザが操作するための独自のコンピュータ端末を持っている、マルチユーザーシステムは、主な機能は、より多くの同時ユーザーです。各ユーザーがコンピュータ全体独占しているかのように時分割、各ユーザー、タイムスライス内の各ジョブは、ターンランであり、時間の非常に短い期間の実行時間の非常に古典的なスライスでシステムは、それが見えます同じ。タイムシェアリングシステムは、主にシステムを照会するために使用されます。

(6)リアルタイムシステム。

  リアルタイムシステムは、より高い、より正確な内部タイムシェアリングシステムのための要件として見られるかもしれません。しかし、この「時間」は、必ずしもタイムスライスによって制御されていない、それが設定された期限までに制御することができます。内部システムは、より多くのリアルタイム取得および制御タスクです。端的に言えば、それは正確なマルチタスクシステムです。

(7)コンピュータのオペレーティングシステム。

  この問題は、非常に単純であるシングルユーザーシングルタスク・オペレーティング・システム(CP / M、MS-DOSなど)、シングルユーザ、マルチタスクオペレーティングシステム(Windows95の、XPなど)、マルチユーザ、マルチタスクオペレーティングシステム(UNIX OSなど)があります。

 

第三に、オペレーティングシステムの構造

(1)構造化されていないOS(第一世代)

  これは、最も初期のオペレーティングシステム、機能の追求だけで、下なしで実現します。

(2)OSモジュール構造(第二世代)

  モジュール構造の明確システムがあり、OSは、プロセス管理モジュール、メモリ管理モジュール、文書管理モジュールなどの別のモジュールに分割され、各モジュールはそう常に破壊、各サブモジュールに分割されます。しかし、モジュール設計により、各モジュールの設計は、手をつないで行く、「順番を決める」信頼できるが存在しない、このデザインとしても知られている「障害モジュラーアプローチ。」その後、第一世代の基礎プラスモジュールの一部門で、この世代のOS、大きな一歩前進。

(3)OS階層構造(第3世代)

  ボトムアップ階層設計から、底部がハードウェアのみ、単一の機能と正しいため、次に高いレベルの抽象化レベルでのみ、その底に依存継続する、透明、関数が連続的に富化された下位層の各々を見てください。これは、オブジェクト指向の考え方に反映されています。この構造と私たちのよく知られたネットワーク・プロトコル・アーキテクチャは非常に似ています。ソフトウェア設計におけるこの構造は非常に一般的です。それは単に層に分割され、要約は、それぞれの層にのみ動作を継続します。      

(4)OSのマイクロカーネルアーキテクチャ(構造近代的なOS)

   マイクロカーネル・システムと、複数のサーバ:システムのマイクロカーネルOSの構成は2つの部分に分割されます。マイクロカーネル手段は、現代のOSの機能の最も基本的な部分を達成するために、十分に小さいです。これは、システムの2つの基本的な機能の外層と通信サーバのハードウェアの基本的な接触のために責任があります。システムの外側の層は、内部サーバ・オペレーティング・システムを指し、様々なシステムサービスは、モジュールサーバアーキテクチャに抽象化され、そのようなファイルサーバ、プロセスサーバとして、プロセスで表されます。我々は、すべてのメッセージの本質は、今日の分散処理システムが必要とするために非常に適しているサーバ要求と応答であることを知っています。、個々のサーバを簡単かつ効率的に十分なマイクロカーネル実際の処理を行うことが、各サーバが一般的であるがモジュール化され、それ自体は、OSの異なるレベルに基づいて構築されたサーバは、このデザインパターンは、唯一信頼できるものではありませんそして、スケーラビリティとパフォーマンスが非常に優れています。このデザインは本当にエレガントです。

 

ます。https://www.cnblogs.com/zrtqsk/p/4064155.htmlで再現

おすすめ

転載: blog.csdn.net/weixin_34311757/article/details/93248562