マインドマップギャラリー オペレーティング システム導入マインド マップ
これは、オペレーティング システムの導入に関するマインド マップです。OS は、コンピュータ システム全体を制御および管理し、コンピュータの作業とリソースの割り当てをスケジュールし、便利なインターフェイスと環境を提供する、ハードウェアとソフトウェアのリソースの合理的な構成を指します。ユーザーおよびその他のプログラムのコレクション。コンピュータシステムの最も基本的なシステムソフトウェアです。
2023-12-01 15:57:29 に編集されましたオペレーティング·システム
導入
OSの概念(定義)
OSとは、コンピュータシステム全体を制御・管理するハードウェア資源とソフトウェア資源を指します。 コンピュータの作業とリソースの割り当てを合理的に整理してスケジュールし、 ユーザーやその他のソフトウェアに便利なインターフェイスと環境を提供するプログラムのコレクション。 コンピュータシステムの最も基本的なシステムソフトウェアです。
オペレーティング システムの特性
同時実行性 (最も重要、他の機能の前提条件)
同じ時間間隔内に 2 つ以上のイベントが発生する
共有
システム内のリソースは、メモリ内で同時に実行される複数のプロセスによって使用できます。 リソースの共有は共有です
相互排他共有モード(カメラ機材の共有使用)
同時アクセスモード(ハードディスクリソースの共有使用)
最も基本的な特性、この 2 つは互いの存在条件です
バーチャル
物理エンティティを複数の論理エンティティに変換する
タイムシェアリングリソース
非同期
マルチプログラミング環境では、複数のプログラムを同時に実行できます。リソースが限られているため、プロセスの実行は一貫性がなく、予測できない速度で進行します。
オペレーティング システムの目標
利便性
効果
スケーラビリティ
開放性
目標と機能 オペレーティングシステムの役割 提供されるサービス
コンピュータシステムリソースの管理者としてのOS
プロセッサ管理
メモリ管理
端末管理
ファイル管理
OSはユーザーとコンピュータハードウェアシステム間のインターフェースとして機能します (上位層へのサービス提供)
一般ユーザー向け
GUI グラフィカル ユーザー インターフェイス (最終的にはプログラム インターフェイスになる)
コマンドインターフェース
オンライン制御方式
タイムシェアリングシステムやリアルタイムシステムに適したオンラインコマンドインターフェース(対話型コマンドインターフェース)
オフライン制御モード
オフラインコマンドインターフェース(バッチコマンドインターフェース)はバッチ処理システムに適しています
ソフトウェア/プログラマーの使用
プログラムインターフェース(システムコール==汎用命令)
利用者は、プログラム中のシステムコールコマンドを使用して、OSに対してサービスの提供を要求します。 ユーザーは、プログラム内でシステム コール コマンドを直接使用して、システムに対してさまざまなサービス リクエストを行うことができます。
たとえば、外部デバイスを使用したり、ディスク ファイルに対する操作を実行したり、 メモリおよびさまざまな制御要件の割り当てと再利用に適用します。
拡張機として使用するOS コンピュータリソースの抽象化を実装する
拡張マシン/仮想マシン: ソフトウェアが適用されたマシン
開発と分類
手動ステージ
欠点がある
マシン全体のユーザー独占使用
CPU が手動操作を待機しているため、CPU が十分に活用されていません。
人間と機械の対立、CPUとI/O速度の対立
バッチ処理ステージ
シングルチャネルバッチ処理システム(オフライン入出力技術の導入)
利点: 人間の速度と機械の速度の矛盾を軽減します。
短所: リソース使用率が依然として低く、高速 CPU は低速 I/O を待機します。
マルチチャネルバッチ処理システム(マルチプログラミング技術オペレーティングシステムが登場し始める) マルチプログラミング(マルチチャンネル、マクロパラレル、マイクロシリアル)
アドバンテージ
高いリソース使用率、マルチプログラミングによるコンピュータリソースの共有
システムのスループットが高く、CPU およびその他のリソースが「ビジー」状態のままです
欠点がある
長いユーザー応答時間とドローン対話機能
タイムシェアリングOS
アドバンテージ
人とコンピュータのインタラクション機能を提供する
欠点がある
緊急のタスクに優先順位を付けることができない
リアルタイムOS
ソフトリアルタイムシステム
永久的なダメージを与えることなく、時折の時間違反を受け入れる能力
ハードリアルタイムシステム
アクションは指定された瞬間(または指定された時間範囲内)に必ず発生する必要があります。
長所: 緊急のタスクに優先順位を付けることができる
マイコンオペレーティングシステム
ネットワークOS
分散OS
パソコンのOS
動作環境
動作機構
プログラムの仕組み
高級言語プログラミング——>機械命令
プログラムの実行プロセスは、CPU が命令を実行するプロセスです。
2つの手順
カーネルプログラム
アプリ
2種類の指示
特権命令(I/O命令、割り込み命令など)
特権のない指示
アクセス管理命令 (プログラムの実行はユーザー モードからコア モードに移行します)
2 つのプロセッサ状態
カーネル状態/コア状態/チューブ状態
ユーザーモード/アイモード
どうやって変態するの?
カーネルモード -> ユーザーモード
PSWを変更する特権命令
ユーザーモード -> カーネルモード
割り込みによりハードウェアが自動的に完了します
例
システムコール
割り込みが発生しました
ユーザープログラムでエラー状態が発生しました
ユーザープログラムで特権命令を実行しようとしました
コア状態からユーザー状態への遷移は、命令によって実装されます。この命令も特権コマンドであり、通常は割り込み復帰命令です。
カーネル (コンピュータ上に構成されている基礎となるソフトウェア) オペレーティング システムの最も重要かつ中核となる部分
時計管理
タイミング機能の実装
割り込み機構
割り込みメカニズムの実装を担当します
原生的
特別プログラムです
これはオペレーティング システムの下部にあり、ハードウェアに最も近い部分です。
この種のプログラムの操作はアトミックです。その操作は 1 回でのみ完了でき、中断することはできません。
稼働時間が短く、通話が頻繁に発生する
システム制御のデータ構造と処理 システムリソースを管理する機能
プロセス管理
メモリ管理
端末管理
割り込み
割り込みの役割
オペレーティング システム カーネルに CPU の制御を強制的に取り戻させます
CPUをユーザーモードからカーネルモードに変更します。
割り込みの分類
内部割り込み(例外/例外/トラップ) 現在実行されている命令に関連する 割り込み信号はCPU内部から発生します
罠に陥る、陥る
命令レイズに囚われ、アプリケーションが意図的にレイズする
故障
エラー状態が原因で発生しますが、カーネル プログラムによって修正される可能性があります。 カーネル プログラムが修復されると、CPU 使用権がアプリケーションに返され、アプリケーションは実行を継続できるようになります。 (ページフォルト割り込みなど)
終了
致命的なエラーが原因で発生した場合、カーネル プログラムはエラーを修復できず、通常はアプリケーションを直接終了します。 (整数のゼロ除算、特権命令の不正使用など)
外部割り込み(狭義の割り込み) 現在実行中の命令に関係なく 割り込み信号はCPUの外部から来ます
ペリフェラルリクエスト(クロック割り込み)
人間の介入 (I/O 割り込み要求)
割り込みメカニズムの基本的な実装原理
割り込み信号を確認してください
内部割り込み:CPUは命令実行時に例外が発生したかどうかを確認します。
外部割り込み: 各命令サイクルの終わりに、CPU は処理する必要のある外部割り込み信号があるかどうかをチェックします。
対応する割り込みルーチンを見つける
「割り込みベクタテーブル」
システムコール(OSがアプリケーション/プログラマに提供するインターフェース) プログラムインターフェイス/一般化された命令
システムコールとは、ユーザーがプログラム内でOSが提供するサブ関数を呼び出すことを指し、特別なパブリックサブルーチンとみなすことができます。 システムリソース管理とプロセス管理が含まれます。特定の特権命令を使用する必要があるため、コア モードで実行する
システムコールとライブラリ関数の違い
一部のライブラリ関数は、システム コールをさらにカプセル化します。
一部のライブラリ関数はシステムコールを使用しません
システムコールを使用して実装する必要がある機能は何ですか?
端末管理
ファイル管理
プロセス制御
プロセスコミュニケーション
メモリ管理
システムコール処理
パラメータの引き継ぎ
コマンド/トラップ/アクセス管理に引っかかる
システムコール要求はオペレーティングシステムのカーネルプログラムによって処理されます。
アプリケーションに戻る
建築
ビッグコア
オペレーティング システムの主要な機能モジュールはシステム カーネルとして使用され、コア状態で実行されます。
利点: 高性能
欠点: カーネル コードは巨大で、構造が複雑で、保守が困難です。
マイクロカーネル
カーネルには最も基本的な機能のみを保持する
利点: コア機能が少なく、信頼性が高く、構造が明確で、メンテナンスが簡単です。
短所: コアモードとユーザーモードを頻繁に切り替える必要があり、パフォーマンスが低い
割り込みと例外
割り込み処理とサブルーチン呼び出しの違い
入口住所
割り込み
割り込みベクタに従って割り込み暗黙命令から取得
サブルーチンコール
アドレッシングモードに従って呼び出し側プログラムによって取得されます。
環境を保存する
割り込み
PC、PSW、汎用レジスタの保存
サブルーチンコール
PC、汎用レジスタの保存
プロセスステータス
割り込み
ユーザーモードからカーネルモードへ
サブルーチンコール
状態変化なし
並列処理と並行処理
OS の同時実行性はタイムシェアリングによって実現されます。
同時実行性
同じ時間間隔内に 2 つ以上のイベントが発生する
平行度
2 つ以上のイベントが同時に送信される
ハードウェアのサポートが必要です
マルチプログラミング環境では、長期間にわたって、巨視的には複数のプログラムが同時に実行されます。 シングルプロセッサ環境では、ある瞬間に実際に実行されるプログラムは一つだけであり、微視的には時分割でプログラムが交互に実行される。