リアルタイムOS演習

科目基礎情報

学校 苫小牧工業高等専門学校 開講年度 令和04年度 (2022年度)
授業科目 リアルタイムOS演習
科目番号 0002 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 1
開設学科 創造工学科(情報科学・工学系情報科学・工学コース) 対象学年 5
開設期 後期 週時間数 後期:2
教科書/教材 すぐわかる!組込み技術教科書【「香取巻男・立田純一」CQ出版】/教材:「ITRONプログラミング入門」CQ出版、「μITRON準拠TOPPERSの実践活用」CQ出版、「TRONプログラミング入門」オーム社、「Real-Time Concepts for Embedded Systems」CMP Books
担当教員 阿部 司

到達目標

1. リアルタイムOSを理解し説明できる。
2. カーネルとオブジェクトを理解し説明できる。
3. ハードウェア制御機能を理解し説明できる。
4. リアルタイムOSのソフトウェア開発システムが使える。
5. リアルタイムOSの応用プログラムとハードウェア制御のプログラムの作成ができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
1. リアルタイムOSを理解し説明できる。リアルタイムOSを理解し説明できる。リアルタイムOSを理解し基本的な説明ができる。リアルタイムOSを理解し説明できない。
2. カーネルとオブジェクトを理解し説明できる。カーネルとオブジェクトを理解し説明できる。カーネルとオブジェクトを理解し基本的な説明ができる。カーネルとオブジェクトを理解し説明できない。
3. ハードウェア制御機能を理解し説明できる。ハードウェア制御機能を理解し説明できる。ハードウェア制御機能を理解し基本的な説明ができる。ハードウェア制御機能を理解し説明できない。
4. リアルタイムOSのソフトウェア開発システムが使える。リアルタイムOSのソフトウェア開発システムが使える。リアルタイムOSのソフトウェア開発システムの基本的な操作ができる。リアルタイムOSのソフトウェア開発システムの操作ができない。
5. リアルタイムOSの応用プログラムとハードウェア制御のプログラムの作成ができる。リアルタイムOSの応用プログラムとハードウェア制御のプログラムの作成ができる。リアルタイムOSの基本的な応用プログラムとハードウェア制御のプログラムの作成ができる。リアルタイムOSの応用プログラムとハードウェア制御のプログラムの作成ができない。

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

Ⅰ 人間性
Ⅱ 実践性
Ⅲ 国際性
CP2 各系の工学的専門基盤知識,および実験・実習および演習・実技を通してその知識を社会実装に応用・実践できる力
CP3 課題の本質を理解し,正しい倫理観の下で,自分の意見を論理的に表現できる力
CP4 他者を理解・尊重し,協働できるコミュニケーション能力と人間力
CP5 国際的素養を有し,継続的に自ら学ぶ力

教育方法等

概要:
組込みシステムを実現するために必要不可欠なリアルタイムOSの概念、構造および利用方法を学び、実習により応用プログラム・ハードウェア制御のプログラム作成を行う。
この科目は企業で「電話ネットワークにおける組込みシステムの一形態である電子交換機の設計」を担当していた教員が、その経験を活かし、「組込みシステムに使用されるリアルタイムOSと組込みソフトウェア設計手法等」について「演習」形式で授業を行うものである。
授業の進め方・方法:
座学により、組込みシステムを実現するために必要不可欠なリアルタイムOSについて、TOPPERS/ASPカーネルの概念、構造および利用方法を学ぶ。
実習により、リアルタイムOSのソフトウェア開発システムを使用して応用プログラムとハードウェア制御のプログラムの設計・作成を行う。
評価では授業で出題するプログラムの作成・解析と演習・実習課題の取組み状況を重視している。演習科目であるが、関係する知識の確認試験を適宜実施する。
評価はプログラム作成(取組み状況の評価も含む)45%、プログラム解析20%、演習・実習10%、確認試験20%、レポート5%である。成績によっては、再試験を行うことがある。合格点は60点以上である。
注意点:
4年生の「オペレーティングシステムI」、5年生の「組込みシステム総論」を基礎としているので、学習内容を復習しておくこと。
C言語によるプログラミング能力と説明のための文章力を養っておくこと。
この科目は学修単位科目のため、事前・事後の自学自習課題として授業で示されるプログラム解析・演習・実習課題を課す。
プログラム解析、演習・実習課題は添削後、目標が達成されていることを確認し、返却する。目標が達成されていない場合には、再提出すること。
プリントを綴じるファイルを準備すること。

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 リアルタイムOSの概要 リアルタイムOSの概要を理解し説明できる。
2週 カーネルの構造 カーネルの構造を理解し説明できる。
3週 オブジェクトと静的APIの実装とプログラム作成 オブジェクトと静的API実装を理解し説明でき、プログラムを作成できる。
4週 タスクと状態遷移に関するプログラムの作成 タスクと状態遷移を理解し説明でき、タスクを使ったプログラムを作成できる。
5週 スケジュールアルゴリズムに関するプログラムの作成と解析 スケジュールアルゴリズムを理解し説明でき、プログラム解析に基づいて動作を説明できる。
6週 スケジューラの実装 スケジューラの実装を理解し説明できる。
7週 ディスパッチャの実装 ディスパッチャの実装を理解し説明できる。
8週 コンテキスト管理の実装 コンテキスト管理の実装を理解し説明できる。
4thQ
9週 デバイスドライバにおけるシステムサービスのプログラム作成 システムサービスを理解し説明でき、システムサービスのプログラムを作成できる。
10週 デバイスドライバにおけるハードウェア非依存部のプログラム作成 デバイスドライバを理解し説明でき、ハードウェア非依存部のプログラム作成できる。
11週 デバイスドライバにおけるハードウェア依存部とPDICのプログラム作成 ハードウェア依存部とPDICのプログラム作成できる。
12週 同期・通信オブジェクトの実装 同期・通信オブジェクトの実装を理解し説明できる。
13週 イベントフラグの実装 イベントフラグの実装を理解し説明できる。
14週 イベントフラグのプログラム作成と解析 イベントフラグを使ったプログラムを作成し、プログラム解析に基づいて動作を説明できる。
15週 割り込みハンドラの実装 割り込みハンドラの実装を理解し説明できる。
16週

評価割合

プログラム作成プログラム解析実習・演習確認試験レポート合計
総合評価割合451020205100
基礎的能力3051510565
専門的能力155510035