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

科目基礎情報

学校 函館工業高等専門学校 開講年度 2017
授業科目 オペレーティングシステム
科目番号 0334 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 生産システム工学科 対象学年 5
開設期 通年 週時間数 2
教科書/教材 オペレーティングシステム(野口健一郎 オーム社)
担当教員 佐藤 恵一

到達目標

1. システムコール、カーネル、ファイルシステム、ドライバなどの各ツールの機能を理解し、ユーザが作成したアプリケーションの命令語がこれらを通じて実行を行う手順を理解する。
2. プロセスの状態遷移と割り込み、競合状態を回避するセマフォなどの技術、記憶階層や再配置のメモリ管理技術、このようなOSが効率よくリソースを割り当て、マルチプログラミングを実現するための基盤技術を理解する。
3. リアルタイムOSなど組込みシステムに使用されているOSの特徴を理解する。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1カーネルの機能を理解し、アプリケーション開発に応用できる。カーネルの機能を理解できる。カーネルの機能を理解できない。
評価項目2マルチプログラミングを実現するための基盤技術を理解し、プリケーション開発に応用できる。マルチプログラミングを実現するための基盤技術を理解できる。マルチプログラミングを実現するための基盤技術を理解できない。
評価項目3リアルタイム性など組込みOSの特徴を活用したアプリケーションの開発ができる。組込みOSの特徴を理解できる。組込みOSの特徴を理解できない。

学科の到達目標項目との関係

教育方法等

概要:
現在のOS(オペレーティングシステム)は、以前アプリケーションであったものがOSの標準機能となっており、アプリケーションとの境界を判断するのが困難な状況である。本授業では、OSの根本的な部分つまり「狭義のOS」に注目する。「狭義のOS」は、どのようなコンポーネントから構成され、それぞれどのような機能、技術があるのかを理解する。カーネルがどのようにして効率よくリソースを割り当て、マルチプログラミングを実現しているのかを理解する。
授業の進め方・方法:
OSの機能を理解していなければ、最適なプログラムを開発できないことを理解する実習を通じてOSの機能を確認する。
注意点:
JABEE教育到達目標評価:試験90%(B-3),課題10%(B-3)

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス、OSの概要。 論理的仮想マシンの提供、リソースマネージャとしてのOSの役割を説明できる。
2週 コンピュータ5大装置とマイクロプログラムの動作 1年で学習した5大装置の機能をさらに発展させて、命令語の実行の流れを理解できる。
3週 API システムコールの実行手順を説明できる。
4週 カーネルの構成とその動作 カーネルの動作概要を説明できる。
5週 プロセスモデル、スレッド プロセスモデルについて説明できる
6週 プロセスの状態遷移 プロセスの状態遷移をマルチプログラミングに対応させて説明できる。
7週 プロセスの状態遷移 プロセスの状態遷移をマルチプログラミングに対応させて説明できる。
8週 前期中間試験
2ndQ
9週 クリティカルセクション、競合状態 競合状態の原理について説明できる。
10週 排他制御、デットロック 競合状態を防ぐ方法を説明できる。
11週 プロセススケジューリング 代表的なプロセススケジューリングを説明できる。
12週 プロセススケジューリング 代表的なプロセススケジューリングを説明できる。
13週 割り込み処理の流れ、割り込みの種類 割り込み処理の流れ、割り込みの種類を説明できる。
14週 記憶階層 記憶階層について説明できる。
15週 前期期末試験
16週 試験答案返却・解答解説 ・間違った問題の正答を求めることができる
後期
3rdQ
1週 プロセスに割り当てるメモリ構成、再配置 プロセスに割り当てられるメモリ領域の構成を説明できる。
2週 論理アドレスから物理アドレスへの変換 論理アドレスと物理アドレスについて説明できる。
3週 論理アドレスから物理アドレスへの変換 論理アドレスと物理アドレスについて説明できる。
4週 仮想記憶。
ローダー、シンボル、ライブラリ(ダイナミックライブラリ・スタティックライブラリ)、プログラムの種類(リエントラント、再帰)
仮想記憶を説明できる。
ローダの機能を理解し、シンボル、ライブラリおよび各種プログラムの特徴を総合的に理解する。
5週 カーネルの入出力管理、デバイスドライバ カーネルの入出力管理の役割を説明できる。デバイスドライバの構造、処理手順について説明できる。
6週 ファイルシステム(FAT) FATファイルシステムを説明できる。
7週 ファイルシステム(iノード) iノードファイルシステムを説明できる。
8週 後期中間試験
4thQ
9週 組込みOSの特徴、種類 組込みOSの特徴、種類を説明できる
10週 アプリケーションの2つの開発モード。リアルタイムOS アプリケーションの2つの開発モード。リアルタイムOSを説明できる。
11週 T-Kernelベースのアプリケーション開発 T-Kernelベースのアプリケーション開発を説明できる。
12週 演習
13週 プロセスベースのアプリケーション開発 プロセスベースのアプリケーション開発を説明できる
14週 演習
15週 学年末試験
16週 試験答案返却・解答解説 ・間違った問題の正答を求めることができる

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野計算機工学コンピュータを構成する基本的な要素の役割とこれらの間でのデータの流れを説明できる。5
コンピュータアーキテクチャにおけるトレードオフについて説明できる。3
システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。4
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。4

評価割合

試験発表相互評価態度ポートフォリオ課題合計
総合評価割合90000010100
基礎的能力0000000
専門的能力90000010100
分野横断的能力0000000