2018年度 先端システムソフトウェア   Advanced System Software

文字サイズ 

アップデートお知らせメールへ登録 お気に入り講義リストに追加
開講元
情報工学コース
担当教員名
渡部 卓雄 
授業形態
講義     
メディア利用科目
曜日・時限(講義室)
月1-2(W832)  木1-2(W832)  
クラス
-
科目コード
CSC.T431
単位数
2
開講年度
2018年度
開講クォーター
3Q
シラバス更新日
2018年3月20日
講義資料更新日
2018年11月19日
使用言語
英語
アクセスランキング
media

講義の概要とねらい

本講義では,組込みシステムを含む複雑なソフトゥエアシステムの設計・構築における実時間処理について学ぶ.具体的には,組込みシステムや実時間システムに関する諸概念,用語および論点を扱う.
組込み・実時間システムの開発に必要な知識や技術に加え,実時間システムの形式的なモデル化や検証についても理解する.

到達目標

以下(1)〜(4)についての理解を得ること.
(1) 実時間システムとその特徴
(2) 実時間OSを使った簡単な組込みシステム/実時間システムの設計と実装
(3) タイミング,スケジューリングおよび関連する性質
(4) 実時間システムの形式化と検証

キーワード

組込みシステム,実時間システム,実時間オペレーティングシステム,スケジューリング,スケジュール可能性,検証,モデル検査,時間オートマトン

学生が身につける力(ディグリー・ポリシー)

専門力 教養力 コミュニケーション力 展開力(探究力又は設定力) 展開力(実践力又は解決力)

授業の進め方

座学およびプログラミング実習

授業計画・課題

  授業計画 課題
第1回 イントロダクション,実時間システムの概要 実時間システムに関する諸定義および性質の概要を理解する
第2回 RTOS (1): 概要,RTOSカーネルの役割,実時間タスク 実時間OSカーネルの役割および実時間タスクについて理解する
第3回 RTOS (2): RTOSにおける同期機構 RTOSにおける同期機構の概要およびアルゴリズムについて理解する
第4回 RTOS (3): 優先度とスケジューリング RTOSにおける優先度の概念および実時間タスクのスケジューリングアルゴリズムについて理解する
第5回 RTOSプログラミング (1): 概要,C/C++によるRTOSプログラミング RTOS上で動作するC/C++プログラムの構築方式について理解する
第6回 RTOSプログラミング (2): 実時間処理のための抽象化機構 RTOSにおける実時間処理の抽象化機構について理解する
第7回 実時間システムの解析 (1): スケジュール可能性解析 スケジュール可能性の概念およびスケジュール可能性解析手法について理解する
第8回 実時間システムの解析 (2): 静的スケジューリング 実時間タスクの静的スケジューリングについて理解する
第9回 実時間システムの解析 (3): 動的スケジューリング 実時間タスクの動的スケジューリングについて理解する
第10回 実時間システムのモデル化 (1): 概要 実時間システムのモデル化手法について理解する
第11回 実時間システムのモデル化 (2): 時間オートマトン 時間オートマトンに関する諸概念および定義について理解する
第12回 実時間システムの検証 (1): 時間オートマトンのモデル検査法 時間オートマトンのモデル検査手法および関連アルゴリズムについて理解する
第13回 実時間システムの検証 (2): UPPAALを使った検証 モデル検査ツールUPAALによる形式検証手法について理解する
第14回 進んだ話題 (1): RTOSカーネルの形式的仕様記述 RTOSの一部に適用可能な実用的な形式的仕様記述方式について理解する
第15回 進んだ話題 (2): RTOSカーネルの形式的検証 RTOSの一部に適用可能な実用的な検証手法について理解する

教科書

特になし (資料は講義webサイトで配布する)

参考書、講義資料等

H. Kopetz, Real-Time Systems: Design Principles for Distributed Embedded Applications (2nd Ed.), Springer, 2011.
E.-R. Olderog and H. Dierks, Real-Time Systems: Formal Specification and Automatic Verification, Cambridge U. Press, 2008.

成績評価の基準及び方法

レポート: 50%
プログラミング課題: 50%

関連する科目

  • CSC.T243 : 手続き型プログラミング基礎
  • CSC.T253 : 手続き型プログラミング発展
  • CSC.T344 : システムプログラミング
  • CSC.T251 : オートマトンと形式言語

履修の条件(知識・技能・履修済科目等)

履修者は関連科目を履修しているか,同等の知識があること.
履修者はUnix系OSの基本的なコマンドライン操作に慣れていることが望ましい.

このページのトップへ