1. オペレーティングシステム

「オペレーティングシステム」における目標

OS の種類,特徴,機能,構成を修得し,応用する。

ジョブ管理,タスク管理,記憶管理などOS の代表的な機能,役割を修得し,応用する。

プログラムの形態,性質,OS の動向を修得し,応用する。

1.1. OSの種類と特徴

ソフトウェアの体系におけるOS の位置付けと必要性,汎用機用,パソコン用,リアルタイム用などのOS の種類,特徴を理解する。

用語例

システムソフトウェア,UNIX,PC 用OS,オープンOS,リアルタイムOS,VM(Virtual Machine:仮想マシン),互換性

1.2. OSの機能と構成

OS の機能,構成,カーネル,言語プロセッサなどを理解する。

用語例

マイクロカーネル,モノリシックカーネル,ミドルウェア,カーネルモード(スーパーバイザーモード),特権モード,ユーザーモード,非特権モード,コンパイラ,インタプリタ,リンケージエディタ,サービスプログラム,仮想記憶管理,プロセス管理,タスク管理,記憶管理,データ管理,運用管理,障害管理,入出力管理,ユーザー管理,割込み,多重(マルチ)プログラミング,ブートストラップ,ネットワークブート,マルチブート,フラッシュブートローダ

1.3. ジョブ管理

一つのまとまった仕事の単位であるジョブと,それを構成するジョブステップの概念,ジョブ管理の手順,ジョブ管理に関連する制御プログラムの役割を理解する。

用語例

ジョブスケジューラー,マスタスケジューラー,セション,省力化,自動運転,システム管理,バックグラウンドジョブ,バッチ処理,cron

1.4. タスク管理

1.4.1. タスクと状態遷移

タスクとジョブステップ,スレッドとの関係,タスクの生成から実行,消滅までの状態遷移,ディスパッチャの役割を理解する。

用語例

軽量プロセス,実行可能状態,実行状態,待ち状態,プロセス,スレッド

1.4.2. 多重(マルチ)プログラミング(マルチタスク)とスケジューリング

多重(マルチ)プログラミングの考え方,タスクのスケジューリングの代表的な方式について,スケジューリングの方法,特徴,スケジューリングにおけるトリガーと優先順位の役割,同期制御・排他制御の必要性,実現方法を理解する。また,タスクとタスクの同期,タスク間でのデータの受け渡し,マルチスレッドの考え方,並列処理などを理解する。

用語例

プリエンプティブ方式,ノンプリエンプティブ方式,タイムスライス方式,イベントドリブン方式,フィードバック待ち行列方式,処理時間順方式,優先順,静的優先順位方式,動的優先順位方式,ラウンドロビン,SJF(Short Job First),最短時間順,割込み禁止,マルチCPU,排他制御,FCFS(First Come First Served),タイムクウォンタム,リソーススタベーション,SVC(SuperVisor Call)割込み,入出力終了割込み,ディスパッチ

1.5. データ管理

補助記憶装置へのアクセスを装置に依存しないインタフェースでアプリケーションプログラムに提供する機能を理解する。

用語例

レコード,スペース管理,カタログ管理,ファイル保護

1.6. 入出力管理

入出力装置を効率良く動作させる入出力制御方式の種類,特徴,チャネルの種類,データ転送方式など,入出力制御の仕組みを理解する。また,スプール,バッファリングなどCPUのアイドル時間を減らして効率を上げるための仕組みを理解する。

用語例

IOCS(Input/Output Control System:入出力制御システム),スプーリング,バッファプール,入出力ポート(I/O ポート),入出力マッピング(I/O マッピング),メモリマッピング,チャネル,チャネル制御方式,DMA(Direct Memory Access:直接記憶アクセス),入出力割込み,メモリマップドI/O,I/O マップドI/O

1.7. 記憶管理

1.7.1. 実記憶管理

記憶領域の管理方式である固定区画方式,可変区画方式など,実アドレス空間の割当て方式の特徴,フラグメンテーションとその対策を理解する。また,主記憶装置を効率良く使うためのスワッピングとオーバーレイを理解する。

用語例

実アドレス方式,単一連続割当て方式,記憶域管理アルゴリズム(ファーストフィット,ベストフィット,ワーストフィット),メモリコンパクション,ロールイン,ロールアウト,スワップイン,スワップアウト,セグメント方式,コンパクション

1.7.2. 仮想記憶管理

実記憶と仮想記憶の関係,仮想記憶の有効性,仮想記憶方式の種類と特徴,動的アドレス変換の仕組みを理解する。また,ページング方式の代表的なページ置換えアルゴリズムについて,ページ置換え手順を理解する。

用語例

ベースアドレス方式,セグメント方式,セグメントページング方式,単一仮想空間方式, 多重仮想空間方式, スラッシング, DAT ( Dynamic AddressTranslator:動的アドレス変換),TLB(Translation Lookaside Buffer),ページフォールト,ページイン,ページアウト,デマンドページング,ページリプレースメント,LRU,FIFO,ワーキングセット

1.8. ネットワーク制御

ネットワーク制御プログラムの役割,機能,OS における位置付けを理解し,OS が提供する通信インタフェースを理解する。

用語例

ネットワークOS,LAN,WAN,プロトコル制御,リアルタイムOS,通信プロトコル,TCP/IP,OSI 基本参照モデル

1.9. 運用の管理

システム始動処理(OS の初期化),システム終了処理,オペレーターとの交信,ユーザー管理機能,スケジューリング,システムモニタリングなど,運用に関する容易性や柔軟性を実現する機能を理解する。

用語例

プロファイル,ユーザーアカウント,システム利用権,ファイルアクセス権,端末利用権,ディスククオータ

1.10. ユーザー管理

ユーザーアカウントの種類,特徴を理解し,アカウントの作成方法,パスワードの設定や変更方法,権限の付与や変更方法などを理解する。また,アカウントを一元管理するためのディレクトリサービスなどを理解する。

用語例

スーパーユーザー,root,Administrator,ゲスト,管理者権限,LDAP,Active Directory

1.11. セキュリティ制御

OS には,アクセス制御,フロー制御,推論制御,暗号化制御などのセキュリティ制御機能があることを理解し,OS での制御方法の種類と特徴を理解する。また,ファイル保護,外部からの侵入検出と防御などのセキュリティが施されたセキュリティカーネルの特徴を理解する。

用語例

外部セキュリティ,内部セキュリティ,多重レベルセキュリティ,BLP(Bell-LaPadula)モデル,ロギング機能,オーディット機能,アカウンタビリティ,信頼プロセス,完全性,隔離,認証,検証可能性

1.12. 障害管理

障害の検出,試験と診断,自動訂正,障害の記録,再構成,リスタート,原因の解決など,障害発生から対策完了までの一連の工程を理解する。

用語例

タイマー監視,CPU 監視装置,ハードウェア障害,ソフトウェア障害,再構成(動的装置再構成,自動CPU 再構成),多重化(入出力パスの多重化,補助記憶装置の二重化,ライブラリの二重化,ディスクの二重書き),システムの多重化(デュアルシステム,デュプレックスシステム),ホットスタンバイシステム,障害回復ルーチン

1.13. プログラムの形態と性質

プログラムには,ソースプログラム,オブジェクトプログラムなどの形態があること,ソースプログラムの管理対象には,データ構造定義,レコード構造定義などのマクロソースがあることを理解する。また,再入可能プログラム,逐次再使用可能プログラムなどの性質と,それらの使用のされ方を理解する。

用語例

原始プログラム(ソースプログラム),目的プログラム,コンパイラ,ロードモジュール,ローダ,ライブラリ,動的リンキング,リエントラント,API,ABI( Application Binary Interface ), POSIX ( Portable Operating SystemInterface),SCM(Software Configuration Management:ソフトウェア構成管理)

1.14. サービスプログラム

サービスプログラムの種類と特徴を理解する。

用語例

ユーティリティプログラム,整列プログラム,併合プログラム,フォーマッティング,アーカイバ,データ編集,ファイルコピー,バックアップ

1.15. OSの動向

OS に関連する最新のトピックス,標準化,技術動向などを理解する。

用語例

移動型小型OS,JavaOS,携帯電話系OS,OSE(Open Systems Environment),セキュアOS,クラウドコンピューティング用OS