マインドマップギャラリー オペレーティング·システム
オペレーティング システムに関する最終試験の主要なポイントには、概要、プロセス管理、プロセッサ管理、メモリ管理、ファイル管理などが含まれます。皆さんのお役に立てれば幸いです。
2023-12-13 23:51:20 に編集されましたオペレーティング·システム
概要
オペレーティングシステムの概念
オペレーティング システムのステータス
オペレーティング システムは、ベア メタルをカバーするソフトウェアの最初の層です。
さまざまなハードウェアリソースを直接制御および管理
他のソフトウェアやユーザーに作業環境を提供する
コンピュータシステム全体の制御および管理センターです
さまざまなアプリケーション ユーザーは、対応するアプリケーション ソフトウェアを使用してさまざまなタスクを実行します
アプリケーション ソフトウェアは、アプリケーション開発者によって開発ツール (高級言語プログラミング ツールなど) を使用して開発されます。
アプリケーション ソフトウェアと開発ツールはすべて、オペレーティング システムによって提供される動作環境で動作し、その動作はオペレーティング システムによって管理され、オペレーティング システムによって必要なリソースが割り当てられ、オペレーティング システムによって I/O デバイスが制御されます。
オペレーティングシステムの機能
マンマシンインターフェースを提供する
コマンドレベルのインターフェイス (ユーザーは、このインターフェイスを通じてジョブにコマンドを発行し、ジョブの実行を制御できます。このインターフェイスは、さらにオンライン ユーザー インターフェイスとオフライン ユーザー インターフェイスに分かれます)
オンラインユーザーインターフェース
オフライン ユーザー インターフェイス (バッチ ジョブのユーザーに提供され、バッチ ユーザー インターフェイスとも呼ばれます)
プログラム レベル インターフェイス (一連のシステム関数呼び出しコマンドと、これらのコマンドを完了するプログラム モジュールで構成されます)
グラフィックインターフェイス
コンピューターリソースを管理する
プロセッサ管理 (プロセッサのタスクはプログラムを実行することであり、特定のデータ オブジェクト上で実行されるプログラムのプロセスはプロセスと呼ばれるため、プロセッサ管理はプロセス管理とも呼ばれます)
単一プログラムの逐次実行: 実行する複数のプログラムを一定の順序で実行します。つまり、1 つのプログラムの実行中に他のプログラムを挿入することはできません。
マルチプログラムの同時実行: 複数のプログラムを同時にメモリに保存し、特定の戦略に従って複数のプログラムの交差実行をスケジュールして、「マイクロシリアル、マクロパラレル」状況を形成します。デバイスは並行して動作できます
(1) プロセッサのスケジューリング (単一プロセッサ システムで複数のプログラムを同時に実行するには、プロセッサを特定の戦略に従ってスケジュールし、特定の時刻にどのプロセスに計算処理を割り当てるかを決定する必要があります。これは、マシン管理のコアタスクを処理しています)
(2) プロセス制御: プロセスは、プログラムの動的実行プロセスであり、その存続期間中に、作成から消滅までの一連の状態遷移を経ます (true または false)。
(3) プロセス通信 (マルチプログラミング環境では、システムはアプリケーションに対して複数のプロセスを確立できます。これらのプロセスは共通のタスクを完了するために相互に協力し、情報を交換する必要があります - プロセス通信)
(4) プロセスの同期(マルチプログラミングシステムでは、複数の同時プロセスが同じ動作環境にある場合、プロセス間のリソース共有やプロセス間の連携など、何らかの接続が必要です)
ストレージ管理 (マルチプログラミング環境では、複数のプログラムを同時にメモリに保存するには、プログラムのスムーズな動作を保証し、メモリ使用率を向上させるために、メモリを合理的に管理する必要があります) 多肢選択式の質問
(1) メモリの割り当て
(2) アドレス変換
(3) メモリ保護
(4) メモリ増設
端末管理
デバイス管理のタスクは、ユーザー プログラムからの I/O 要求を受け入れ、I/O デバイスをユーザー プログラムに割り当てることです。
CPU と I/O デバイスを並行して動作させ、CPU と I/O デバイスの使用率を向上させます。
I/O速度の向上
ユーザープログラムによる I/O デバイスの使用を容易にする
上記のタスクを完了するには、オペレーティング システムのデバイス管理サブシステムには、デバイスの割り当て、バッファ管理、デバイス ドライバー、デバイスの独立性などの機能が必要です。
ファイル管理
(1) ファイル保管スペースの管理
(2) ディレクトリ管理
(3) ファイル操作
(4) ファイルアクセス権限制御
オペレーティングシステムの開発プロセス
コンピューターハードウェア開発の 4 つの段階
初代:真空管時代(1946~1955年)
第 2 世代: トランジスタ時代 (1955 ~ 1965 年)
第 3 世代: 集積回路時代 (1965 ~ 1980 年)
第4世代:大規模集積回路の時代(1980年~現在)
速度、容量、安定性、信頼性はすべて徐々に着実に向上しています。
オペレーティング システム開発の 4 つの典型的な段階
1950 年代初頭の手動操作 (オペレーティング システムなし)
1950年代のシングルチャネルバッチ処理システム(画像の読み取りと認識が可能)
右に示すように
マルチチャンネルバッチ処理システム、1960年代初頭(画像の読み取りと認識が可能)
欠点: ジョブの処理時間が長い 人間とコンピュータの対話機能の欠如 実行プロセスが不確かである
1960年代半ばのタイムシェアリングシステム
タイムシェアリングシステム
割り込み技術
CPUは外部信号(割り込み信号)を受信すると、現在の作業を停止し、外部イベントの処理に移行し、処理が完了すると、元の作業の中断点(ブレークポイント)に戻り、元の作業を継続します。
チャネルテクノロジー
周辺機器とメモリ間のデータ転送を特に処理するプロセッサ
タイムシェアリングシステムの特徴(高性能ホスト、複数端末)
多重変調
複数のユーザーが同じコンピュータをオンラインで使用している
独占性
ユーザーはコンピュータを排他的に感じている
インタラクティブ性
ユーザーのリクエストに迅速に対応する
リアルタイムシステム(リアルタイムシステムは、即時性と信頼性を重視し、リアルタイム操作の要求を満たすために開発されたオペレーティングシステムです)
リアルタイム制御
リアルタイム制御を必要とするシステムは、通常、リアルタイム制御システムと呼ばれます。応用分野には、生産プロセス制御や兵器制御 (大砲の自動制御システム、航空機の自動操縦システム、ミサイル誘導システムなど) が含まれます。
リアルタイム情報処理
通常、情報のリアルタイム処理を必要とするシステムをリアルタイム情報処理システムと呼び、代表的なリアルタイム情報処理システムとしては、航空機予約システムや情報検索システムなどが挙げられる。
マイコンオペレーティングシステム
シングルユーザー マルチタスク オペレーティング システム (Win)
マルチユーザー マルチタスク オペレーティング システム (UNIX および Linux)
オペレーティング システムの特性 (多肢選択式の質問)
1. 同時実行性
シングルプロセッサ システムでは、同時実行とは「マクロ レベルでは同時に実行される複数のプログラムと、ミクロ レベルでは交互に実行される」ことを指します。
2. 共有する
コンピュータ システム内のリソースは複数のタスクによって使用されます
3.非同期
微視的にはプロセスは交互に実行され、プロセスの実行、停止などの状態は予測不可能で非同期です。
4.仮想
物理エンティティは複数の論理エンティティにマッピングされ、ユーザー プログラムは論理エンティティを使用します。
一般的なオペレーティング システム
UNIX系
構造
コアプログラム(カーネル)
周辺プログラム(シェル)
Linuxシステム
これは Unix に似たオペレーティング システムであり、無料で使用でき、自由に配布されます。
オペレーティングシステムのアーキテクチャ
オペレーティング システムの論理構造
論理構造の種類
モノリシック構造
モジュールを基本単位として構築
特徴
独立したモジュール設計、コーディング、デバッグ
自由を呼び出すモジュール
モジュール通信は主にグローバル変数の形式で行われます。
欠点がある
情報が無計画に転送され、メンテナンスや更新が困難になる
階層構造(サイレントマップ)
各レイヤーは、その下のレイヤー (Unix、Linux) によって提供されるサービスのみを使用します。
すべての機能モジュールは呼び出しの順序に従って複数の層に配置されます。隣接する層間には一方向の依存関係または一方向の呼び出しのみが存在します。
カーネル
割り込みハンドラ
各種デバイスドライバー
より頻繁に実行されるモジュール (クロック マネージャー、プロセス スケジューラーなど)
低レベル通信モジュール、メモリ管理モジュールなど)
マイクロカーネル構造 (Win)
アドバンテージ
カーネルコードのメンテナンスを簡素化する
柔軟な構造
高いセキュリティ
移植が容易
CPUステータス
オペレーティングシステムをサポートする最も基本的なハードウェア構造
CPU
メモリ
割り込み
時計
CPU状態の分類
核保有国
すべてのリソースにアクセスし、すべての命令を実行する機能
ハイパーバイザー/OS カーネル
管理
カーネル状態とユーザー状態の間
ユーザーモード
一部のリソースのみにアクセスでき、他のリソースは制限されます
ユーザープログラム
インテルCPUのステータス
Ring0~Ring3 (Ring0がコア、Ringが最外層)
メモリ
プログラムやデータを格納する部分
分類
メモリ(半導体メモリ)の読み取りおよび書き込み動作モードに応じて
ラム
ロム
ストレージ要素別のマテリアル
半導体メモリ(メインメモリとして使用されることが多い)
磁気ストレージ (テープ、ディスク)
光ストレージ(光ディスク)
CPUとの接触
メインメモリ: CPU と直接情報を交換します。
補助ストレージ: CPU と直接情報を交換することはできません
理想的なストレージシステム: 高速、大容量、低コスト
実際のストレージ システム (上から下の順に読み取ります)
登録する
キャッシュ
メインメモリ
補助記憶装置
割り込み機構
システム割り込みを引き起こすイベントは割り込みソースと呼ばれます
オペレーティング システムのユーザー インターフェイス
🔥オペレーティングシステムの起動プロセス
Windowsの起動プロセス
役職
電源を入れると、BIOS がホストのセルフテスト プログラムを開始します。
初期ブート
BIOS は、MBR からブート プログラムを読み取り、メモリ内の特定の場所にロードします。
ブート プログラムは DOS7.0 を起動し、オペレーティング システム コアをロードします。
WINDOWS がシステムを引き継ぎ始める
コアの初期化
リソースステータス、コアデータなどの初期化
システムの初期化
GUI インターフェースが生成され、システムはスタンバイ/メッセージ受け入れ状態になります。
ユーザーインターフェースの分類
操作インターフェース
グラフィックインターフェイス
コマンドインターフェース
バッチコマンド/プログラム
シェル
システムコール
プロセス管理
プロセスの紹介
プログラムの逐次実行
プログラムの実行プロセスは計算です
プログラムを順番に実行する場合の特徴
連続性
閉鎖性
再現性
プログラムの同時実行とその特徴
同時実行の概念
複数のプログラムが同じ時間間隔内で同時に発生します
プログラムの同時実行の特徴
不連続
閉鎖を失う
再現不可能性
プロセスの定義と特徴
プロセスとはプログラムの実行です
プロセスとは、他のプロセスと同時に実行できる計算です。
プロセスは、指定されたアクティビティ空間と初期条件の下でプロセッサ上でプログラムを実行するプロセスです。
プロセスは、データ セット上でプログラムを実行するプロセスであり、システム内のリソース割り当てとスケジューリングのための独立した単位です。
プロセスは動的なライフサイクル アクティビティです。カーネルは、カーネルによって強制終了されることによって最終的に終了するプロセスを作成できます。
プロセスの基本状態と遷移
🔥 プロセスの 3 つの基本状態
準備完了状態
実行状況
ブロッキング状態
プロセス制御ブロック PCB
プロセスの同期と相互排他
クリティカルリソースの概念
2 つ以上のプロセスで同時に使用できないリソースは、クリティカル リソース (CR) と呼ばれます。重要なリソースは、プリンタ、テープ ドライブなどの一部の専用デバイスである場合もあり、共有変数、テーブル、リンク リストなどである場合もあります。
プロセスの概念
プロセスステータス
準備完了状態
稼働状況
ブロッキング状態
プロセススケジューリングアルゴリズム
先着順アルゴリズム
短いジョブの優先アルゴリズム
タイムスライス回転アルゴリズム
糸
糸の概念
スレッドはプロセス内で演算を実行する最小単位、つまりプロセッサのスケジューリングを実行する基本単位です。
プロセスとスレッドの比較
プロセスはリソース割り当ての基本単位です
スレッドはプロセッサを割り当てるための基本単位であり、リソースの割り当てとは関係ありません。
スレッドは 1 つのプロセスにのみ属することができ、プロセスは複数のスレッドを持つことができますが、少なくとも 1 つのスレッドが存在する必要があります
スレッドのステータス
準備完了状態
稼働状況
ブロッキング状態
スレッドスケジューリングアルゴリズム
優先スケジューリングアルゴリズム
タイムスライス回転アルゴリズム
プロセッサ管理
ジョブ管理
宿題の概念と分類
宿題のコンセプト
プログラム、データ、作業指示書で構成されます
課題の分類
加工方法による
オフラインジョブ
オンラインの仕事
オンラインジョブ(インタラクティブジョブ/ターミナルジョブ)
ユーザーはコンピュータ システムと直接対話します
ユーザーは、端末やコンソールのキーボード上のコマンドを操作するか、グラフィカル ウィンドウ インターフェイスを通じてジョブの操作を制御します。
主にタイムシェアリングシステムで使用されます。
仕事の状況
ステータスの送信
バックアップステータス
実行状況
完成状態
階層的スケジューリング
プロセスのスケジューリング
プリエンプション方式
非プリエンプティブモード
ジョブのスケジュール設定
Linux システムにはジョブ スケジューリングの概念がありません
プロセスのスケジューリング
プロセススケジューリング機能
システム内のすべてのプロセスの実行を記録します。
準備完了ステータスキューからプロセスを選択します
プロセスコンテキストの切り替えを実行する
スケジュールアルゴリズム
先着順スケジューリング アルゴリズム (FCFS)
長いジョブやプロセスには適していますが、短いジョブやプロセスには適していません。
所要時間 = 待ち時間 実行時間
完全な所要時間 = 1 (待機時間/実行時間)
短いジョブ (プロセス) 優先スケジューリング アルゴリズム (SJF または SPF)
ジョブのスケジューリングやプロセスのスケジューリングに適しています
長時間の仕事には向かない
このアルゴリズムはジョブの緊急性を考慮していないため、緊急のジョブをタイムリーに処理することは保証できません。
ジョブまたはプロセスの長さはユーザーによってのみ推定され、ユーザーが意図的または意図せずにジョブの推定実行時間を短縮する可能性があるため、短いジョブの真の優先スケジューリングが達成されるとは必ずしも保証されないため、このスケジューリング アルゴリズム他のスケジューリング比較アルゴリズムとしてよく使用されます。
高応答率優先スケジューリング アルゴリズム (HRN)
このアルゴリズムはジョブのスケジューリングによく使用されます
応答率 R=1 (待ち時間/サービス所要時間) R が大きいほど優先度が高くなります。
優先スケジューリング アルゴリズム (HPF)
優先度
静的優先度
動的優先度
優先スケジューリングアルゴリズムの種類
プリエンプティブ優先スケジューリング アルゴリズム
非プリエンプティブ優先スケジューリング アルゴリズム
優先順位の数値が小さいほど、優先順位が高くなります。
タイムスライス回転法(RRアルゴリズム)
マルチレベルキュースケジューリングアルゴリズム (MLQ)
(装備のコンセプト)
機器の分類
入力デバイス
出力機器
ストレージデバイス
設備の管理方法
デバイスドライバ
デバイスコントローラー
(デバイスドライバ)
デバイスドライバーの概念
デバイスドライバーの機能
デバイスの初期化
機器制御
デバイス割り込み処理
デバイスドライバーの種類
キャラクターデバイスドライバー
ブロックデバイスドライバー
ネットワークデバイスドライバー
メモリ管理
メモリ管理の概要
ストレージ管理のいくつかの基本概念
論理空間上のオペランドのアドレスを論理アドレスといいます。
オペランドがメモリにロードされるアドレスは、物理アドレスと呼ばれます。
パーティションストレージの管理方法
パーティション管理の種類
単一パーティション
固定パーティション
可変パーティション
再配置可能なパーティション
単一プログラムの連続割り当て
メモリ
システム領域
ユーザーエリア
固定パーティションの割り当て方法(判定)
内部フラグメント
領域がジョブに割り当てられると、残りの領域を再度使用することはできません。
外部の破片
ジョブがメモリをロードするときに、メモリ内のパーティションの長さがジョブ プログラムの長さよりも短い場合、プログラムをロードできません。
内部の断片化と外部の断片化の両方がストレージ領域の無駄を引き起こします
動的パーティション割り当て
ファーストフィットアルゴリズム
前から後ろまで
ループファースト適応アルゴリズム
前から後ろまで、前から後ろまでつながっています
最適な適応アルゴリズム
小さいものから大きいものまで並べ替える
最悪のフィットネスアルゴリズム
大きいものから小さいものまで並べ替える
ページストレージ管理
ページストレージ管理の考え方
ページ ストレージ管理では、メイン メモリがいくつかの同じサイズの物理ブロックに分割されます。
プログラムのアドレス空間は論理ページに分割されます
論理ページは物理ブロックと同じサイズです
通常、物理ブロックのサイズは 2n セクター (1K、2K、4K など) です。
ページストレージ管理のデータ構造
質問では、ページ サイズ L と論理アドレス空間のアドレス A が与えられ、ページ番号 P とページ アドレス W が計算されます。
システムのページ サイズは 1 KB、A = 2170 B と仮定すると、上記の式から P = 2、w = 122B がわかります。
P =(int) [A/L] W=A%L
速い時計
ページ テーブル全体がメイン メモリに配置されている場合、1 つのデータ (または 1 つの命令) をフェッチするには、少なくとも 2 回のメモリ アクセスが必要です。
(記憶の概念)
記憶の分類
物理メモリ
仮想メモリ
メモリ割り当て戦略
固定パーティション割り当て戦略
動的パーティション割り当て戦略
ページメモリ割り当て戦略
(メモリ保護)
メモリ保護の概念
メモリ保護方法
アドレス空間の保護
アクセス制御保護
ファイル管理
ファイル管理の概要
ファイル (大): 関連するレコードの集合であり、通常は外部メモリに保存され、独立した単位として保存して、対応する操作を実行できます。
ファイルには、ファイルの種類、ファイルの長さ、ファイルの物理的な場所、ファイルの作成時間、使用許可 (読み取りおよび書き込み) などの属性が含まれます。
ファイル名は通常、ASCll 文字または中国語の文字で構成されます
レコード (中央): 関連するデータ項目のコレクションであり、特定の側面におけるオブジェクトの属性を記述するために使用されます。たとえば、学生レコードには、学生番号、名前、性別、年齢、クラスなどが含まれます。
データ項目 (小): オブジェクトの特定の属性を記述する文字セットであり、データ構成内で名前を付けることができる最小の論理データ単位です。つまり、データ要素またはフィールドとも呼ばれます。
ファイルシステム
ファイルシステムの概念
ファイルシステム機能
ファイルやディレクトリのオープン、クローズ、読み取り、書き込みなどの管理。
ファイル共有メカニズム、ファイルセキュリティなど、ファイル自体に関連するサービスを提供します。
割り当てや解放などのファイルストレージスペースの管理は、主にディスクなどの書き換え可能な外部メモリに焦点を当てています。
ユーザーインターフェースを提供する
(ファイルシステムの種類)
FATファイルシステム
NTFSファイルシステム
EXTファイルシステム
ファイルの分類
ファイルデータ形式による分類
ソースファイル
対象ファイル
実行可能ファイル
Win .exe ファイルの拡張子
リナックスは大丈夫だよ
用途別に分類
システムファイル
ライブラリファイル
ユーザーファイル
アクセス権順に並べ替える
読み取り専用ファイル
ファイルの読み取りと書き込み
実行可能ファイル
保存期間順に並べ替える
一時ファイル
アーカイブ
永久ファイル
ファイル管理による分類
普通文書
カタログファイル
特別な文書
ファイルアクセス方法
シーケンシャルアクセス方式
論理アドレスに従ってファイルに順次アクセスする
レコード ファイルの場合、レコードのソート順に従って順次アクセスされます。
シーケンシャル ファイルは、物理レコードの順序と論理レコードの順序が一致しているファイルです。
ランダムアクセス方式
ダイレクトアクセス方式とも呼ばれる
レコード番号またはアドレスに従って、ファイル内の任意のレコードにアクセスします。
固定長レコード ファイルのランダム アクセスでは、ファイルは番号付きの多数のブロックまたはレコードとみなされ、各ブロックのサイズは同じです。
ランダム アクセスにより、ブロックを自由に読み書きできます。したがって、ファイルへのランダム アクセスの順序は定義されていません。アクセス要求を受信すると、レコードの論理アドレスが計算され、レコードにアクセスされます。
可変長レコード ファイルの場合、先頭から指定されたレコードまでの長さを計算して読み取りおよび書き込みの変位を決定するのは非常に不便です。通常、インデックス テーブル構成が使用されます。
キーアクセス方法
論理レコード内の特定のデータ項目の値(キーといいます)をインデックスとしてアクセスします
キーアクセス方式は本質的にはランダムアクセス方式です
ファイルの論理構造
ログファイル
レコード長で並べ替える
固定長レコード ファイルとは、ファイル内のすべてのレコードが同じ長さであることを意味します。
不定長のレコード ファイルとは、名前、自宅住所、メモなど、長さが異なるファイル内の複数のレコードを指します。これらは、より長い場合もあれば、より短い場合もあります。
インデックスファイル
レコードが可変長の場合、通常はインデックス テーブルが作成されます。
レコードの検索を高速化するために、各レコードにテーブル エントリを設定します。
(ファイルストレージデバイス)
ハードディスク
CD
Uディスク