TOPPERSの最新成果と取り組み

TOPPERSカンファレンス2014	

TOPPERSプロジェクトの最新の成果と取り組み
2014年年6⽉月24⽇日

⾼高⽥田  広章NPO法⼈人  TOPPERSプロジェクト  会⻑⾧長名古屋⼤大学  ⼤大学院情報科学研究科  教授
附属組込みシステム研究センター⻑⾧長

Email:  hiro@ertl.jp      URL:  http://www.ertl.jp/~∼hiro/
Hiroaki  Takada

1TOPPERSの最新成果と取り組み

AGENDATOPPERSプロジェクトの概要と方向性（復習）▶ これまでの開発の流れと現状▶ 次の10年を見据えた活動指針（2011年度に策定）
TOPPERSプロジェクトの最新の成果▶ この1年に一般公開した開発成果▶ TOPPERS/ATK2，A-COMSTACK，A-RTEGEN▶ ECHONET Lite機器用ミドルウェア（TOPPERS/ECNL）	
TOPPERSプロジェクトの最新の取り組み▶ TOPPERS/AP（Automotive Platform）▶ TOPPERS第３世代カーネル（ITRON系）▶ 第３世代カーネルの必要性と機能概要▶ TOPPERS/ASP3カーネル
Hiroaki  Takada

2

TOPPERSの最新成果と取り組み

TOPPERSプロジェクトの概要と⽅方向性  (復復習)

Hiroaki  Takada

3

TOPPERSの最新成果と取り組み

TOPPERSプロジェクトとは?
TOPPERS = Toyohashi Open Platform for
Embedded and Real-Time Systems

プロジェクトの活動内容▶ ITRON仕様の技術開発成果を出発点として，組込みシス
テム構築の基盤となる各種の高品質なオープンソースソフ
トウェアを開発するとともに，その利用技術を提供
組込みシステム分野において，Linuxのように広く使われるオープンソースOSの構築を⽬目指す!
プロジェクトの推進主体▶ 産学官の団体と個人が参加する産学官民連携プロジェクト▶ 2003年9月にNPO法人として組織化▶ それ以前は，名古屋大学（2002年度までは豊橋技術科学
大学）高田研究室を中心とする任意団体として活動	
Hiroaki  Takada

4

TOPPERSの最新成果と取り組み

TOPPERSプロジェクトの狙い
決定版のITRON仕様OSの開発 完了了▶ ITRON仕様がかかえる過剰な重複投資と過剰な多様性の問題を解決（または軽減）
次世代のリアルタイムOS技術の開発▶ 組込みシステムの要求に合致し，ITRONの良さを継承す
る次世代のリアルタイムOS技術を開発
Linuxと類似のOSをもう１つ作っても意味がない!
▶ オープンソースソフトウェア化により産学官の力を結集
組込みシステム開発技術と開発支援ツールの開発▶ 高品質な組込みシステムの効率的な開発を支援
組込みシステム技術者の育成への貢献▶ オープンソースソフトウェアを用いた教育コースや教材を開発し，それを用いた教育の場を提供
Hiroaki  Takada

5

TOPPERSの最新成果と取り組み

組込みシステムの今後の変化
制御と情報処理の統合（統合システム，融合システム）▶ 情報通信技術と組込みシステム技術を活用したスマート社会を構築することが世界的な流れ▶ スマートグリッド，スマートコミュニティ，エネルギーITS，…	
▶ 組込みシステムと情報システムを結合した大規模な統合シ
ステム（融合システム）の構築が重要に
ネットワークによる機能再配置
クラウドコンピューティング	▶ それぞれのサービスの複雑化はさらに進むと思われる▶ すべての機器がネットワーク接続されれば，すべての機器
が汎用・多機能である必要はない! パラダイムチェンジの時期の見極めが難しい
消費電力あたりの性能の向上▶ 新しいハードウェア技術の導入が必要	
Hiroaki  Takada

6

TOPPERSの最新成果と取り組み

次の10年年を⾒見見据えた活動指針  (2011年年度度に策定)  Smart Futureのための組込みシステム技術▶ 組込みシステム技術を，持続可能なスマート社会の実現（Smart Future）のための重要な要素技術の１つと位置づけ，その研究開発と普及に取り組む▶ それに向けての研究開発課題▶ Safety & Security	
▶ Ecology（高エネルギー効率）▶ Connectivity
コンソーシアムによるオープンソースソフトウェア開発	
▶ 同じ技術に関心を持つプロジェクトメンバによりコンソーシ
アムを結成し，複数組織の協力によりソフトウェアを開発▶ 開発したソフトウェアは，TOPPERSプロジェクトからオープ
ンソースソフトウェアとして公開	
Hiroaki  Takada

7

TOPPERSの最新成果と取り組み

重点的に取り組んでいるテーマ
次世代のリアルタイムカーネル技術▶ TOPPERS第3世代カーネル（ITRON系）▶ 車載システム向けRTOS（AUTOSAR仕様からの発展）
ソフトウェア部品化技術▶ TECS（TOPPERS組込みコンポーネントシステム）
組込みシステム向けプラットフォームと開発支援ツール▶ 車載制御システム向けプラットフォーム（AUTOSAR仕様）▶ 宇宙機向けソフトウェアプラットフォーム（SpaceWire OS）▶ 仮想化技術（SafeG）や各種のミドルウェア▶ 開発支援ツール（シミュレータ，可視化ツール）
技術者育成のための教材開発▶ プラットフォーム技術者の育成▶ ETロボコン向けプラットフォームと教材の提供
Hiroaki  Takada

8

TOPPERSの最新成果と取り組み

リアルタイムカーネル開発の流流れ!  高信頼性・安全性・リアルタイム性を追求
第１世代のリアルタイムカーネル▶ µITRON4.0仕様準拠＋αのリアルタイムカーネル▶ TOPPERS/JSP，FI4，FDMP，HRP▶ OSEK/VDX OS仕様準拠のリアルタイムカーネル▶ TOPPERS/ATK1
第２世代のリアルタイムカーネル▶ TOPPERS新世代カーネル（ITRON仕様からの発展）▶ TOPPERS/ASP，FMP，HRP2，SSP	▶ AUTOSAR OS仕様ベースのリアルタイムカーネル▶ TOPPERS/ATK2（SC1，SC3，SC1-MC，SC3-MC）
第３世代のリアルタイムカーネル▶ 開発に着手 … 後で詳しく紹介

Hiroaki  Takada

9

TOPPERSの最新成果と取り組み

TOPPERSプロジェクトの最新の成果

Hiroaki  Takada

10

TOPPERSの最新成果と取り組み

この1年年に⼀一般公開した開発成果
2013年（6月〜9月）
6月21日 TECS MrubyBridgePluginパッケージ
6月21日 mruby on asp+tecs
6月26日 TOPPERS新世代カーネル用コンフィギュレータ
Release 1.9.2
6月28日 TOPPERS/ATK2 シングルコア版 Release 1.1.0，
マルチコア版 Release 1.0.0!  マルチコア版は最初の一般公開
7月17日 TOPPERS/ATK2 関連ドキュメント，マルチコア版
Release 1.0.2
9月19日 TOPPERS基礎１・2・3実装セミナー教材!  実習ボードをARM7を用いたボード（LPC2388ARM7）に統一
Hiroaki  Takada

11

TOPPERSの最新成果と取り組み

2013年（10月〜12月）
10月1日 TOPPERS新世代カーネル用コンフィギュレータ
Release 1.9.3
10月11日 TOPPERS/ATK2 関連ドキュメント，シングルコア
版 Release 1.2.0，マルチコア版 Release 1.1.0
11月20日 TOPPERS/PARK（パーティション対応カーネル）!  最初の一般公開
12月3日 SafeG Release 1.0!  Altera SoCとXilinx Zynqに対応
12月10日 TINET Release 1.5.3およびRelease 1.4.5
12月26日 TOPPERS/ATK2 関連ドキュメント，シングルコア
版 Release 1.2.1，マルチコア版 Release 1.1.1
	Hiroaki  Takada

12

TOPPERSの最新成果と取り組み

2014年（1月〜5月）	
1月8日 TOPPERS新世代カーネル統合仕様書 Release
1.6.0
1月8日 TOPPERS/ASPカーネルRelease 1.9.0!  ASPカーネル Release 1.Xは，これ以降はバグ
フィックスのみを実施する
3月10日 TOPPERS/SSPカーネル Release 1.2.1
3月26日 TOPPERS新世代カーネル用コンフィギュレータ
Release 1.9.4
3月26日 TOPPERS/ATK2関連ドキュメント，シングルコア
版Release 1.3.0，マルチコア版Release 1.2.0
3月26日 TOPPERS/A-COMSTACK Release 1.0.0!  最初の一般公開
3月26日 TOPPERS/A-RTEGEN Release 1.0.0!  最初の一般公開
Hiroaki  Takada

13

TOPPERSの最新成果と取り組み

TOPPERS/ATK2，A-‐‑‒COMSTACK，A-‐‑‒RTEGENTOPPERS/ATK2	▶ AUTOSAR OS仕様をベースに開発したリアルタイムカー
ネル	
TOPPERS/A-COMSTACK	▶ AUTOSAR仕様をベースに開発したCAN通信スタック▶ 以下のソフトウェアで構成される（：の右はベースとした
AUTOSAR仕様の名称）	
▶ TOPPERS/A-COM：AUTOSAR COM仕様	
▶ TOPPERS/A-PDUR：AUTOSAR PDUR仕様	
▶ TOPPERA/A-CANIF：AUTOSAR CANIF仕様	
▶ TOPPERS/A-CAN：AUTOSAR CAN仕様	TOPPERS/A-RTEGEN	
▶ AUTOSAR RTE仕様をベースに開発したRTE（Runtime
Environment）ジェネレータ	
	

Hiroaki  Takada

14

TOPPERSの最新成果と取り組み

開発体制▶ ATK2コンソーシアム（次に紹介）により開発
ターゲットプロセッサ▶ アルテラ Nios II … 公開済み
▶ ルネサスV850 … 公開済み（部分対応）▶ ARM Cortex-M3 … 開発済み
▶ 他のプロセッサへのポーティングも進行中
オープンソースという用語を避けることにした▶ AUTOSARは，AUTOSARに基づいたソフトウェアを商用利用する場合に，AUTOSARパートナーとなることを求めている．この主張を受け入れると，AUTOSARベースのソフ
トウェアは，OSI（Open Source Initiative）の定義によるオー
プンソースソフトウェアに合致することができなくなる
Hiroaki  Takada

15

TOPPERSの最新成果と取り組み

ATK2コンソーシアムの概要
正式名称▶ 次世代車載システム向けRTOSの仕様検討及び開発に関するコンソーシアム型共同研究
コンソーシアム型共同研究とは？
▶ 名古屋大学 大学院情報科学研究科 附属組込みシステ
ム研究センター（NCES）が設定した研究開発テーマに，複数の企業の参加を得て研究・開発を進める共同研究
実施期間▶ 2011年度〜2013年度の3年間実施
研究開発成果の取扱い▶ 開発したRTOS等はTOPPERSプロジェクトからオープン化▶ 検証スイートと設計書は，コンソーシアム参加企業は自由に使用できる．参加企業以外には有償でライセンス
Hiroaki  Takada

16

TOPPERSの最新成果と取り組み

ATK2コンソーシアムの成果
RTOS▶ 次世代車載システム向けRTOS外部仕様書	
▶ RTOSの実装（ソースコード） → ATK2
▶ SC1 … SC1（基本機能）のフルセット相当の機能▶ SC3FL2 … SC3（メモリ保護拡張）のサブセット（機能レベル2）相当の機能▶ SC1-MC … SC1のマルチコア対応▶ SC3FL2-MC … SC3LF2のマルチコア対応▶ RTOSの設計書▶ RTOSの検証スイート → AKTSP▶ 開発したRTOSの機能範囲に対応▶ トレーサビリティ対応（SC1のみ）▶ 外部仕様書から設計書，外部仕様書から検証スイート
へのトレーサビリティ
Hiroaki  Takada

17

TOPPERSの最新成果と取り組み

通信スタック▶ 通信スタックの外部仕様書（未完成）▶ 通信スタックの実装（ソースコード） → A-COMSTACK▶ AUTOSAR COM仕様，CAN Interface（CANIF）仕様のサブセット▶ 通信スタックの検証スイート▶ AUTOSARのコンフォーマンステストを実行できる環境
RTEジェネレータ▶ RTEジェネレータの外部仕様書▶ RTEジェネレータの実装（ソースコード） → A-RTEGEN▶ 開発したRTOSと通信スタックの範囲に限定したもの
デモアプリケーション▶ AUTOSARの研究・教育プラットフォームとして提供
Hiroaki  Takada

18

TOPPERSの最新成果と取り組み

AUTOSARベースの研究・教育プラットフォーム
AUTOSAR研究・教育上の課題とアプローチ▶ 大学等において，AUTOSARに取り組みたくても，研究・学習に適したものがなかった▶ ATK2コンソーシアムのオープンな開発成果物を利用して，研究・教育プラットフォームを提供
ZMP社との協力▶ ZMP社のミニチュアカー（RoboCar 1/10）を利用▶ ATK2が実行できるマイコン
ボードを搭載▶ ZMP社の制御ソフトをATK2
上にポーティング
▶ ハードウェアはZMP社から購入可能
Hiroaki  Takada

19

TOPPERSの最新成果と取り組み

ECHONET  Lite機器⽤用ミドルウェアの開発
ECHONET Lite（エコーネットライト）とは？
▶ エコーネットコンソーシアムが策定したスマートハウス向け

制御プロトコルおよびセンサーネットプロトコル▶ ISO規格およびIEC規格として国際標準化されている	
▶ 2011年12月に，経済産業省に日本国内でのHEMS標準
プロトコルとして認定された開発のスキーム▶ 「ソフトウェア開発委託事業」により開発を実施▶ TOPPERSプロジェクトで開発テーマをECHONET Lite規格対応通信ミドルウェアに決定し，開発者を公募▶ 6件の応募の中から，審査の結果，コアーズ（株）の提案を採択し，同社に開発を委託
Hiroaki  Takada

20

TOPPERSの最新成果と取り組み

開発・検証状況▶ 開発委託した通信ミドルウェアは，2014年3月に完成▶ TOPPERS/ECNLと命名▶ 開発された通信ミドルウェアを用いた照明機器プロファイ

ルのサンプルソフトが，認証を受けるに十分な機能であることを確認▶ 神奈川工科大学のHEMS認証支援センターのご協力を得た	
リリース計画▶ TOPPERSプロジェクトの会員向けに説明会を開催	
▶ TOPPERSプロジェクトの会員向けに早期リリースを開始▶ 近日中に，オープンソースソフトウェアとして一般公開の予定	Hiroaki  Takada

21

TOPPERSの最新成果と取り組み

TOPPERS/ECNLの概要
位置付け▶ エコーネットコンソーシアムのECHONET Lite規格の第2部「ECHONET Lite通信ミドルウェア仕様」を実装したもの▶ 機器向けの通信スタック（コントローラ側の機能は十分ではない）
TOPPERS/ECNLの特徴▶ TOPPERS/ASPカーネルとTINET上で動作▶ 現時点ではIPv4のみに対応（TINETはIPv6も対応）▶ TOPPERSのコンフィギュレータを使用して，静的APIの記述で，機器のオブジェクトとプロパティを定義▶ 機器のオブジェクトとプロパティは，ECHONET Lite規格ではAPPENDIXとして規定	
Hiroaki  Takada

22

TOPPERSの最新成果と取り組み

静的APIの記述例	

機器オブジェクトの定義例	

プロパティの定義例	
Hiroaki  Takada

23

TOPPERSの最新成果と取り組み

TOPPERSプロジェクトの最新の取り組み

Hiroaki  Takada

24

TOPPERSの最新成果と取り組み

重点的に取り組んでいるテーマ

再掲	

次世代のリアルタイムカーネル技術▶ TOPPERS第3世代カーネル（ITRON系）▶ 車載システム向けRTOS（AUTOSAR仕様からの発展）
ソフトウェア部品化技術▶ TECS（TOPPERS組込みコンポーネントシステム）
組込みシステム向けプラットフォームと開発支援ツール▶ 車載制御システム向けプラットフォーム（AUTOSAR仕様）▶ 宇宙機向けソフトウェアプラットフォーム（SpaceWire OS）▶ 仮想化技術（SafeG）や各種のミドルウェア▶ 開発支援ツール（シミュレータ，可視化ツール）
技術者育成のための教材開発▶ プラットフォーム技術者の育成▶ ETロボコン向けプラットフォームと教材の提供
Hiroaki  Takada

25

TOPPERSの最新成果と取り組み

⾞車車載制御システム向けSPFの現状・動向※ SPF = ソフトウェアプラットフォーム	
標準化動向▶ AUTOSAR仕様が国際的に広く採用されつつある
開発動向▶ AUTOSAR仕様準拠のSPFは，欧州のソフトウェア企業が開発競争で優位に▶ それらの企業は100人以上の技術者でSPFを開発	
▶ 国内で，これだけの規模でSPFを開発できる企業は？
▶ この状況のままでは，近い将来，車載制御システム向け
SPFは寡占状態になる可能性も▶ 他の分野（PC，スマホ）では，有力なOSは，グローバルに3つ程度しか残っていない
我々の問題意識▶ 車載制御システム向けSPFがすべて海外製になると，日本の自動車産業の「ものづくり力」が低下するのでは？

Hiroaki  Takada

26

TOPPERSの最新成果と取り組み

APコンソーシアムの概要※ AP = Automotive Platform	

正式名称▶ 車載制御システム向け高品質プラットフォームに関するコンソーシアム型共同研究
コンソーシアム型共同研究とは？
▶ 名古屋大学 大学院情報科学研究科 附属組込みシステ
ム研究センター（NCES）が設定した研究開発テーマに，複数の企業の参加を得て研究・開発を進める共同研究
実施内容▶ AUTOSAR仕様をベースとして，高品質な車載制御システ
ム向けプラットフォームに関する研究開発を行う	
実施期間▶ 2014年度に開始▶ 単年度毎の実施契約で，3年程度の継続実施を予定
Hiroaki  Takada

27

TOPPERSの最新成果と取り組み

研究開発の目標▶ AUTOSAR仕様をベースとして，その問題を解決し，日本の自動車産業のニーズに合致した，軽量で高品質なSPF
を開発する▶ AUTOSAR仕様に対して大幅な修正（改良）を行うような研究開発も実施する▶ 開発するSPFを，グローバルに有力な車載制御システム
向けSPFのトップ3の内の1つとすることを目指す
目標に向けてのアプローチ▶ 開発したプラットフォームは，TOPPERSプロジェクトからオープン化することを基本とする▶ 目標達成のためには，多くの企業の協力を得る必要があり，オープン化（無償公開）はそのための手段▶ ただし，品質確保に用いる開発成果については，コンソー
シアムメンバ以外には有償でライセンスする		

Hiroaki  Takada

28

TOPPERSの最新成果と取り組み

AUTOSARの技術的課題
大きいオーバヘッド▶ 実行時オーバヘッドが大きく，ECUのコストアップに
機能安全への対応が非効率▶ 機能安全への対応が後付けで，非効率的
マルチコアへの対応が不十分▶ マルチコア向け拡張は，まだ大きい改良が必要
完成度の低い仕様▶ 曖昧な仕様や不整合が数多く残っている
理想と遠いコンフィギュレーションツール
▶ 本来は，ハードウェアの違いを吸収してくれるはずだが…	
技術を理解している技術者の不足（技術的課題ではないが）▶ これらの課題克服のためには，AUTOSARの技術を正しく理解している技術者の育成が必要
Hiroaki  Takada

29

TOPPERSの最新成果と取り組み

APコンソーシアムの研究開発項⽬目  (2014年年度度)(a) TOPPERS/ATK2の機能安全規格対応	
 さらなる品質向上	
▶ ATK2を機能安全規格対応するために不足している開発項目（設計書ベースの検証，既存の検証スイートで不足しているテストの開発など）を実施	
(b) 時間パーティショニング機能の検討・開発	
 新機能の提案	
▶ 機能安全要件を満たす時間のパーティショニング機能を検討・開発（AUTOSAR仕様に対する大幅な修正）(c) BSWモジュールの開発	
 開発範囲の拡大	
▶ CAN通信スタックのマルチコア向け最適化▶ 各種のBSWモジュール（ウォッチドックマネージャ等）の開発	
(d) RTEジェネレータの拡張とインテグレーション	
▶ RTEジェネレータの拡張	
▶ 開発成果がインテグレーションできることの確認
Hiroaki  Takada

30

TOPPERSの最新成果と取り組み

時間パーティショニング機能の検討・開発
パーティショニング機能とは？
▶ ソフトウェアコンポーネント（SW-C）が使用する資源を分離することにより，あるSW-Cが誤動作した場合でも，他のSW-Cに悪影響を与えないようにするための機能
パーティショニング機能の必要性▶ 機能安全／セキュリティ確保▶ ECU統合▶ 修正時の再検証
現状の課題▶ AUTOSAR OS仕様のタイミング保護機能では不十分
APコンソーシアムにおける取り組み▶ より良い仕様を検討・評価し，参加企業内で標準化する▶ AUTOSARに対しても提案していきたい
Hiroaki  Takada

31

TOPPERSの最新成果と取り組み

マルチコア対応の強化
AUTOSARにおける課題▶ OSのマルチコア対応仕様は固まってきたが，BSWモ
ジュールについてはまだ大きい改良が必要▶ AUTOSAR Release 4.1に，Release 4.0に対する我々の独自拡張とほぼ同じものが導入されていること等を見て，技術的には決して負けていないと再確認▶ 実装・検証技術については，未成熟
マルチコア対応OSの検証技術▶ マルチコア対応OSの実装技術は，シングルコア向けのように枯れておらず，検証の難易度も高い
BSWモジュールのマルチコア向け最適化▶ 現在のBSWモジュールのマルチコア対応仕様は極めて非効率
Hiroaki  Takada

32

TOPPERSの最新成果と取り組み

APコンソーシアムの参加企業*は部分参加，†はオブザーバ参加	
▶ （株）東芝▶ アイシンコムクルーズ（株）▶ （株）豊田自動織機▶ イーソル（株）*▶ （株）豊通エレクトロニクス†	▶ （株）ヴィッツ	
†▶ （株）永和システムマネジメント† ▶ パナソニック（株） 	
▶ パナソニック アドバンストテク▶ （株）OTSL†	
ノロジー（株）	
▶ オムロン オートモーティブエレ▶ 富士通テン（株）
クトロニクス（株）†▶ 富士ソフト（株）	
▶ （株）サニー技研	
▶ ルネサス エレクトロニクス（株）▶ スズキ（株）▶ 矢崎総業（株）▶ （株）デンソー *▶ 菱電商事（株）†▶ （株）東海理化電機製作所 *	

参加企業（20社）! 他に，参加を検討中の企業が複数社ある
Hiroaki  Takada

33

TOPPERSの最新成果と取り組み

TOPPERS第3世代カーネルの必要性求められている/求められつつある技術・機能▶ 機能安全からの要求に応えられるパーティショニング機能▶ ティックレスの高分解能タイマと外部時刻同期▶ マルチコアにおける動的ロードバランシング▶ メニーコアプロセッサへの対応

一方，廃止すべきと考えられる機能もある▶ タスク例外処理機能，メールボックス

TOPPERS第3世代カーネルへ▶ 現状のリアルタイムカーネル（第2世代）の次の世代と位置付けた方が，大胆な仕様変更が可能▶ 第3世代においても，2系列（ITRON系，車載系）のリアル
タイムカーネル開発は，引き続き維持していく
Hiroaki  Takada

34

TOPPERSの最新成果と取り組み

TOPPERSカーネル開発ロードマップ
ATK2	

ATK1	

⾞車車載系

第3世代カーネル

第2世代カーネル

第1世代カーネル

ATK3?	AUTOSAR仕様
ベース	

OSEK/VDX仕様	

動的オブ
ジェクト生成	

FDMP	
HRP	

ITRON系

マルチ/
メニーコア	

マルチコア
プロセッサ拡張	HRP2

メモリ保護	FI4	μITRON4.0	
フルセット	TECS	μITRON4.0	
スタンダードプロファイル	

新世代カーネル	
スタンダードプロファイル	

Hiroaki  Takada

HRP3	
パーティショニング	

ASP Safety
ASP	

2004	

メモリ保護，
時間保護	

コンポーネントシステム対応	

JSP	

2000	

ＦＭＰ3

ＦＭＰ

マルチコア対応	

2007	

機能安全対応	

SSP
最小セット	

2010	

2013	

ASP3	
第3世代カーネル
スタンダードプロファイル	

2020	
35

TOPPERSの最新成果と取り組み

第3世代カーネル  (ITRON系)  の機能概要
廃止する機能▶ タスク例外処理機能▶ 必要性が低いにもかかわらず，ターゲット依存部（特に保護機能対応の場合）の実装負担が大きい▶ メールボックス機能▶ 保護機能対応では不適切な機能（サポートしていない）▶ データキューまたは優先度データキューで代替可能
追加する機能 … 詳しくは以降のスライドで	▶ タスク終了要求機能 … タスク例外処理機能，待ち禁止状
態を代替▶ ティックレスの高分解能時間管理と外部時刻同期▶ マルチコアにおける動的負荷分散の支援機能▶ 時間のパーティショニング機能
Hiroaki  Takada

36

TOPPERSの最新成果と取り組み

仕様策定の方針▶ システム／アプリケーションによって要求が異なる機能は，

ミドルウェア等で実現することとし，カーネルにはその実現に必要な最低限の機能を導入する▶ ポリシーとメカニズムの分離の考え方▶ 実装方法を合わせて検討し，オーバヘッドの大きい仕様を避けるお断り▶ 第3世代カーネルに関して紹介する内容は，検討中のものであり，今後変更になる可能性があります	

Hiroaki  Takada

37

TOPPERSの最新成果と取り組み

タスク終了了要求機能
対応する要求▶ アプリケーションの安全な終了▶ アプリケーション間がパーティショニングされていて，ア
プリケーション単位の停止／再起動を行う場合に，アプ
リケーションを安全に終了させることができること
機能の必要性▶ アプリケーションを構成するタスクを，他のアプリケーションとの共有リソースを（拡張サービスコールによって）アクセス
中に強制的に終了させると，他のアプリケーションに悪影響が及ぶ▶ そこで，タスクが強制終了すると不都合な状況では，タスクの終了を遅延させ，タスクを安全に終了させることを可能にする
Hiroaki  Takada

38

TOPPERSの最新成果と取り組み

機能概要▶ タスクに対して終了要求を行うと，対象タスクが終了禁止状態でない限り，即座に終了する	
▶ 対象タスクが終了禁止状態であれば，タスク終了要求フラグをセットする．また，待ち状態を解除し（E_RASTERが返る），強制待ちから再開する▶ タスク終了要求フラグがセットされている状態では，タスクは広義の待ち状態になれない（E_RASTERエラーとなる）
追加するサービスコール▶ ras_ter：タスクの終了要求（対象タスクに終了要求を行う）▶ dis_ter：タスク終了の禁止▶ ena_ter：タスク終了の許可▶ sns_ter：タスク終了禁止状態の参照
Hiroaki  Takada

39

TOPPERSの最新成果と取り組み

ティックレスの⾼高分解能時間管理理と外部時刻同期
対応する要求▶ 高分解能の時間管理と絶対時刻の表現▶ マイクロ秒単位で実行を制御できる高分解能の時間管理機能を持つこと▶ 相対時間として，少なくとも1時間＋αが扱えること	
▶ 64ビットで表現される絶対時刻を管理できること▶ ティックレスタイマ	
▶ 処理すべきタイムイベントがない時に，タイマ割込みがかからないようにすること（消費エネルギー削減のため）	
▶ 外部時刻同期▶ 外部から供給される時刻に，内部の時刻を同期させる機能を持つこと	
▶ カレンダ機能との統合 … 未検討
Hiroaki  Takada

40

TOPPERSの最新成果と取り組み

時刻を表すデータ型▶ SYSTIM … システム時刻．単位はマイクロ秒．64ビット符

号無し整数（ただし，64ビット整数が扱えないターゲットでは32ビットとする）	
▶ RELTIM … 相対時間．単位はマイクロ秒．32ビット符号無し整数．指定できる最大値は4,000,000,000（＝66分40秒）▶ TMO … タイムアウト指定．32ビット符号無し整数．相対時
間またはTMO_POLまたはTMO_FEVR
外部時刻同期のための機能▶ 適切な同期方法は，同期対象の外部時刻によって異なる

ため，外部時刻同期はミドルウェアで実現することとし，カーネルではその実現に必要な最低限の機能を提供▶ 複数の同期アプローチをサポート	
Hiroaki  Takada

41

TOPPERSの最新成果と取り組み

システム時刻の調整（adj_tim）▶ 即座にシステム時刻を調整する機能を導入	
▶ アイドル時間（システム周期の最後にあることが多い）のみを伸び縮みさせる同期アプローチへの対応▶ タイムイベント発生の（リアルな）時刻が変化する	
ドリフト量の設定（set_dft）▶ カーネルにドリフトを調整する機能を持たせ，ドリフト量を（動的に）設定する機能を用意▶ システム時刻を外部時刻に徐々に合わせるため▶ ローカルクロックの発振周波数の誤差を補正するため▶ ドリフト量はppm単位で指定．±10%の範囲を指定可能
システム時刻の参照／設定（get_tim／set_tim）	
▶ 64ビットのシステム時刻の参照／設定▶ タイムイベント発生の（リアルな）時刻は変化させない	
Hiroaki  Takada

42

TOPPERSの最新成果と取り組み

動的負荷分散の⽀支援機能対応する要求▶ マルチコアプロセッサにおいて，動的負荷分散を行うミド
ルウェアを実現するために必要な機能を持つこと	
▶ 適切な動的負荷分散の方法は，アプリケーションによって異なるため，動的負荷分散はミドルウェアで実現することとし，カーネルではその実現に必要な最低限の機能を提供▶ 少なくともタスク数平準化方式と仕事量平準化方式を実現できるようにする
参考文献	
[1] 石田利永子，本田晋也，高田広章，福井昭也，小川敏
行，田原康宏：マルチストリーミング処理のためのマルチプロセッサ向けロードバランス機構，電子情報通信学会
論文誌，vol. J96-D，no. 1，pp. 168-182，2013年1月．	
Hiroaki  Takada

43

TOPPERSの最新成果と取り組み

タスクおよびスケジューリング状態の参照▶ get_tst：タスク状態の参照▶ get_nth／mget_nth：指定した優先度を持つ実行できる状
態のタスクの中で，n番目の優先順位のタスクを参照する▶ get_lod／mget_lod：指定した優先度を持つ実行できる状
態のタスクの数を参照する
サブ優先度機能▶ タスクにサブ優先度の情報を持たせ，サブ優先度を設定するサービスコール（chg_spr）を追加▶ サブ優先度はuint_t型で表現し，uint_t型で表現できる
すべての値を使うことができる	▶ ある優先度をサブ優先度を使ってスケジュールするものと（静的API ENA_SPRにより）指定すると，その優先度の中では，高いサブ優先度を持つタスクから順に実行
Hiroaki  Takada

44

TOPPERSの最新成果と取り組み

時間のパーティショニング機能
対応する要求▶ 時間分割により共有されるプロセッサ（およびその一部とみなされる資源）のパーティショニング
基本的なアプローチ▶ TOPPERS時間パーティショニングスキーム（次のスライドで説明）に基づく▶ TOPPERS会員向けに配布中の「パーティショニング機
能に関する標準規格の提案」で定義▶ 保護ドメイン単位でパーティショニングを行う▶ タイムウィンドウを割り当てられていない保護ドメインは，ア
イドル時間（タイムウィンドウ内の空き時間，アイドルウィン
ドウ内の空き時間）に実行する	
Hiroaki  Takada

45

TOPPERSの最新成果と取り組み

TOPPERS時間パーティショニングスキーム▶ 各パーティションは，システム周期内で各パーティションを実行するタイムウィンドウを決める方式（航空機向け規格であるARINC 653で採用）をベースとして，システム割込み（タイムウィンドウによらずに受け付けられる割込み）を許す
ように拡張した方式でスケジュール▶ パーティション内で複数のタスクを実行する場合には，従来のOSと同じ方式でスケジュール（階層型スケジュール）t	
 タイム
ウィンドウ1	

システム
割込み	
Hiroaki  Takada

タイム
ウィンドウ2	

タイムウィンドウ1の終了時刻が遅くなる	

タイム
ウィンドウ3	

システム
割込み	

アイドル
ウィンドウ	

アイドルウィンドウが
短くなる	
46

TOPPERSの最新成果と取り組み

その他の仕様変更更非タスクコンテキスト専用のサービスコールの廃止▶ サービスコール名称が“i”で始まる非タスクコンテキスト専用のサービスコールは廃止▶ 非タスクコンテキストからも，act_tskやsig_sem等を呼ぶ（呼べるサービスコールが増えるわけではない）
起動要求をキューイングしないタスクの追加▶ 起動要求をキューイングしないタスクを表すタスク属性とTA_NOACTQUEを追加
ミューテックス機能の仕様変更▶ ミューテックスの解放順序をLIFO順に制限▶ RAM節約のため

Hiroaki  Takada

47

TOPPERSの最新成果と取り組み

TOPPERS/ASP3カーネル
基本パッケージでサポート▶ タスク終了要求機能▶ ティックレスの高分解能時間管理，システム時刻の調整機
能，システム時刻の参照／設定機能▶ ミューテックス機能
拡張パッケージでサポート▶ ドリフト調整機能	
▶ メッセージバッファ機能	▶ オーバランハンドラ機能	
▶ タスク優先度拡張	
▶ 制約タスク▶ サブ優先度機能	▶ 動的生成機能	
Hiroaki  Takada

48

TOPPERSの最新成果と取り組み

内部構造の見直し▶ タスク例外処理機能の廃止に関連して，システム状態の持ち方を整理▶ ティックレスの時間管理の実装▶ kernel.tfの分割
開発状況▶ 一部の拡張パッケージを除いて，ターゲット非依存部はほぼ完成している▶ 今後，ターゲット依存部の開発が必要
リリース計画▶ TOPPERS会員は，subversionからアクセス可能（早期リリース扱い）▶ 一般公開のスケジュールは未定	
Hiroaki  Takada

49

TOPPERSの最新成果と取り組み

皆様へのお願い
TOPPERS第3世代カーネルへのご意見を募集中▶ 第3世代へ移行するタイミングは，カーネル仕様を大きく見直すチャンス▶ カーネル仕様に対するご意見をお願いしたい
利用事例の報告に関するお願い▶ 利用事例を紹介することは，さらなる採用の促進やプロジェクトの発展につながる → ユーザにも利益に▶ TOPPERSのユーザには，利用報告をお願いしたい
会員増加への協力のお願い▶ TOPPERSプロジェクトは，活動資金を，広く薄く負担していただくという考え方で運営▶ TOPPERSのユーザやサポータには，プロジェクトへの入会をお願いしたい	
Hiroaki  Takada

50