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

科目基礎情報

学校 東京工業高等専門学校 開講年度 平成30年度 (2018年度)
授業科目 オペレーティングシステムⅠ
科目番号 0111 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 1
開設学科 情報工学科 対象学年 4
開設期 後期 週時間数 2
教科書/教材 Web教材使用.必要に応じてプリントを配布する.
担当教員 山下 晃弘

到達目標

・リアルタイムOSにおけるタスクの生成・管理・優先度に基づくスケジューリングについて理解し,タスクを活用したプログラミングができる.
・リアルタイムOSが提供するイベントフラグ・周期ハンドラ・セマフォ・メモリプールなどの機能について理解し,それらを使用したプログラミングができる.
・リアルタイムOSを活用した簡単なシステムが構築できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
リアルタイムOSにおけるタスクの生成・管理・優先度に基づくスケジューリングについて理解し,タスクを活用したプログラミングができる.タスクの役割とOSによるタスク操作やスケジューリングについて理解し,タスクを適切に使用したプログラミングができる.タスクの生成・管理や優先度の概念を理解している.タスクや優先度の概念を理解できていない
リアルタイムOSが提供するイベントフラグ・周期ハンドラ・セマフォ・メモリプールなどの機能について理解し,それらを使用したプログラミングができる.リアルタイムOSが提供する様々な機能を理解し,適切な場面でそれらの機能を使用したプログラミングができる.リアルタイムOSが提供するいくつかの機能を理解し,実装することができる.リアルタイムOSが提供する機能について理解できておらず,どの機能も実装して使用することができない.
リアルタイムOSを活用した簡単なシステムが構築できる.リアルタイムOSの必要性を理解し,構築したいシステムに対するタスク設計,優先度管理,OSの機能の利用ができる.構築したいシステムに対するタスク設計やOSの機能などの指針が与えられれば一部を実装できる.構築したいシステムに対してタスクの割り当てや実装ができない.

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

JABEE (a) 説明 閉じる

教育方法等

概要:
オペレーティングシステムの概要について学習し,特にプロセス管理に関する演習を行う.リアルタイムOSであるμITRON上で動くプログラム開発を通して,プロセスのスケジューリング・排他制御,同期処理,共有メモリ方式などを取り上げ,リアルタイムOSについての理解を深める.
授業の進め方・方法:
プログラミング関連科目の知識を前提とする.電子計算機I,II2ではOSのない電子計算機そのものの制御について学んだが,本科目では,OSで提供されているシステムコールを活用して,プロセス管理などの手法を体験する.尚,体系的なオペレーティングシステムの知識については、オペレーティングシステムⅡにおいて学習する。
注意点:
プログラミングに関する復習をしておくこと.電子計算機Iについても復習しておくこと.授業の予習・復習及び演習については自学自習により取り組み学修すること.

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 講義のガイダンス.リアルタイムOSの概要,H8マイコンボードとリアルタイムOSを用いたプログラミング 講義の全体像を理解し,H8マイコンボード上でリアルタイムOSを使用したプログラミング環境が整えられる.
2週 リアルタイムOS上でのタスクの生成と管理 μITRON互換のOSを使用してタスクの静的生成が実装できる.
3週 タスクスケジューリングとタスクの動的生成 μITRON互換のOSを使用してタスクの動的生成が実装できる.
4週 イベントフラグを用いたタスク間の同期処理 イベントフラグの概念を理解し,イベントフラグを用いたプログラムが実装できる.
5週 演習 これまでの演習課題をすべて提出する
6週 周期ハンドラを利用した周期的な処理のスケジューリング 周期ハンドラの概念を理解し,周期ハンドラを用いたプログラムが実装できる.
7週 セマフォの仕組みと,セマフォを用いた共有資源の排他制御 セマフォを用いた排他制御の概念を理解し,セマフォを用いたプログラムが実装できる.
8週 共有メモリとメモリプールの利用 共有メモリにおけるメモリプールの概念を理解し,メモリプールを用いたプログラムが実装できる.
4thQ
9週 演習 これまでの演習課題をすべて提出する
10週 メールボックスを用いたタスク間でのブロックデータ通信 メールボックスによるタスク間通信を理解し,メールボックスを用いたプログラムを実装できる.
11週 スロットマシンの製作1 授業内で提示されたスロットマシンの要求定義を理解し,大まかな設計が完了している.
12週 スロットマシンの製作2 スロットマシンの製作に取り掛かり,各タスクのおおまかな実装が完了している.
13週 スロットマシンの製作3 スロットマシンが完成し,仕様通りの動作が確認できている.
14週 講義のまとめとテスト対策 講義全体を振り返り,リアルタイムOSの役割や機能について理解している.
15週 期末テスト
16週 テスト返却

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。3後1,後11,後12,後13,後14
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。3後2,後3,後4,後6,後7,後8,後10

評価割合

試験発表相互評価態度ポートフォリオその他演習課題合計
総合評価割合300000070100
基礎的能力00000000
専門的能力300000070100
分野横断的能力00000000