リアルタイムOSの内部構造

お申込みは↓のボタンから

募集は締め切りました

科目名 リアルタイムOSの内部構造
開講日 [Zoom講義] 2024年9月28日(土曜日)および2024年10月5日(土曜日)の2日間
開講時間 [Zoom講義] 9時30分から17時00分 (9時00分開場,集合時刻9時15分)
受講申込期間 2024年7月1日(月曜日)~2024年9月8日(日曜日)
受講料 50,000円(税込)
enPiT-Pro Embの「名古屋大学車載組込みシステムコース」のコース受講料に含まれますので,同コースの履修者には請求しません.
定員(先着順) 15~25名
参加方法と実習について 本講義は,Zoomによるオンラインのみで開催します.

本講義は,Windows PC及びボードを用いた実習があります.講義中は講師が実習を実施しますので,受講者は実習を実施せずに見てもらうことになります.

受講者が機材を用意し,ツールをインストールすることで,実習を実施することも可能です.
会場・留意事項 ・実習の実施を希望される方は,実習環境をご自身で用意して頂く必要があります.下欄の「実習機材」の欄を
お読み頂き,事前に演習環境を整備してください.
・テキストは,受講者に事前に送付します.
・勤務先や自宅などから,Webで受講してください.
・Webでの講義配信に,Zoomを使用します.
・必要な機材は,PC,ヘッドセット,通信環境です.カメラは任意です.
詳しくは,こちらでご確認ください.
https://zoom.us/test でZoomの基本動作を確認できます.
・質疑応答やグループワーク(発表含め)等は,Zoomで実施します.
・修了テストは,Webテストや,問題のWeb配信とE-mailでの提出などを検討中です.
・ネットワークトラブルにより受講ができなかった受講者には,後日に録画データを配信します.
・インターネット回線(モバイルルーター含む)は,通信容量制限や速度制限のない契約プランでご使用ください.制限を超えると画像が映らない,音声が途切れる等のトラブル発生の可能性があります.
講師 高田広章(名古屋大学),本田晋也(南山大学)
講師は都合により変更する場合があります
講座概要 最近の組込みソフトウェア開発では,リアルタイムOSが使われることが多くなっていますが,リアルタイムOSを使いこなすためには,その内部構造について知っていることが大きな助けになります.

この講座では,μITRON仕様を拡張・改良したリアルタイムカーネルであるTOPPERS/ASP3(Advanced Standard Profile)カーネルを題材に,その内部構造について学びます.

TOPPERS/ASP3カーネルの開発者2名が,なぜそのような設計にしたかに踏み込んで解説します.さらに,TOPPERS/ASP3カーネルに導入されたTOPPERS標準割り込みモデルについても学びます.

アプリケーション開発者がリアルタイムOSの内部構造を知ることで,OSの能力を活かしたアプリケーションの設計が可能になります.

リアルタイムOSを使った組込みソフトウェア開発に従事しているが,その内部について全く知らないという技術者の方に最適な講座です.
実習機材 オンライン受講者は,以下の(1)実機環境または,(2)シミュレーション環境を用意することで,実習も実施可能です.
(1) 実機による実習
Zybo Z7-10: Zynq-7000 ARM/FPGA SoC Development Board
(参考価格 22,980円)
・Windows PC
→ツールがインストール可能であること.
・MicroUSBケーブル
→上記のZybo Z7-10(MicroUSB)とWindowsPCを接続するケーブル.

WindowsPCに下記のツールをインストールして下さい.
・Xilinx SDK 2019.1
インストーラをダウンロード(無料のXilinxアカウントが必要)
[以下の選択によりインストール]
・Select Edition to Install
→Xilinx Software Development Kit(XSDK) を選択
・Xilinx Software Development Kit(XSDK)
→そのままNextボタンを押して進める
・Select Destination Directory
→そのままNextボタンを押して進める
・TerTerm
インストーラをダウンロード
・Ruby
インストーラをダウンロード

インストール後,教材のファイル(講義前に連絡します)をダウンロードして展開して下さい.展開先はテキストと合わせるなら,"c:\home\"に展開して下さい.

上記が完了したら,テキストの"開発環境とカーネルの構築手順 編"に従って,つぎの操作を行ってください.
・ボードの設定
・PCとの接続
・TeraTermの起動
・Xilinx SDKの起動
・カーネル付属のサンプルプログラムのビルドと実行

(2) シミュレーション環境による実習(Windows上に直接構築します)
こちらの記事に従ってにASP3のシミュレーション環境を構築して下さい.
到達目標 ・リアルタイムカーネルの内部構造を理解する
対象者 以下の(1)-(2)の条件がOR条件の方
(1)リアルタイムOSを用いた組込みソフトウェア開発に従事されている方,従事される予定の方
(2)リアルタイムOSの研究・開発に従事される予定の方
前提条件 ・リアルタイムカーネルの使用方法(外部仕様)を理解していること
申込み時にμITRON仕様について知っている必要はありませんが, 開催日までに予習してきていただきます.
・C言語のプログラミングができること
・マイクロプロセッサの基本機能(機械語,割込み)について知っていること.ただし,ARMについて知っている必要はありません.
講義計画 1日目
・リアルタイムOSの基礎,ITRON仕様とTOPPERSプロジェクト
・TOPPERS/ASPカーネルの概要,リアルタイムカーネルの構成
・ARMのアーキテクチャ,開発環境とカーネルの構築手順
・リアルタイムカーネルの動作例,システム状態とコンテキスト,ディスパッチャ

2日目
・TCBとレディキューの構造,待ち状態を表現するためのデータ構造
・待ちオブジェクトのコントロールブロック構造,割込みハンドラの出入口処理
・サービスコールのコード解説(タスク管理機能,タスク付属同期機能,タスク間同期・通信機能)
評価方法 enPiT-Pro Embの「名古屋大学車載組込みシステムコース」履修者がこの科目を受講した場合の修了認定基準は,次のとおりです.
・理解度テスト60点以上
・全時間数を出席していること
これまでに受講された方々の声 TOPPERS/ASPカーネルの開発者の先生方が講義してくださったおかげか,とても分かりやすかったですし,設計については何故このような設計にしたかの詳しいことも聞けて良かったです.
ディスパッチ,サービスコール,割り込み出入り口処理などの内部構造を詳しく解説していただき,どのようにOSが動作してるのか大変よく理解できました.ソースコードの細部にまで高速化や省メモリの工夫が行われていて,参考になりました.OSの内部構造や動作を理解することで,バグの少ない効率的なアプリケーションの開発ができると感じました.
リアルタイムOSが保有すべき機能要件が理解できた.TOPPERSとその他(AUTOSAR OSなど)の設計思想の違いが分かった.機能を実現する時の考え方(設計方針,実装方針)も学べた点が良かった.OS開発以外にも役立てる事ができると思う.
今まではリアルタイムOSの基本的な部分しか知らずに使用していましたが,ディスパッチや割込みの説明を受け,コードを実際に確認することにより詳しく知ることができました.

*enPiT-Pro Embの講義について語っていただいた,受講者の声(インタビュー形式)はこちらから.
備考 お申込みや開講に関わる諸条件は,公開講座開講規約のページをご覧ください.