SpeC記述のC記述への変換 (SpecCによるソフトウェア記述の実装記述への変換)

Similar documents
トレースログ可視化ツールTraceLogVisualizer(TLV)の一般公開について

2015 TRON Symposium セッション 組込み機器のための機能安全対応 TRON Safe Kernel TRON Safe Kernel の紹介 2015/12/10 株式会社日立超 LSIシステムズ製品ソリューション設計部トロンフォーラム TRON Safe Kernel WG 幹事

2015_collabo_04

Microsoft PowerPoint - ICD2011TakadaSlides.pptx

リソース制約下における組込みソフトウェアの性能検証および最適化方法

Monthly Research / セキュアハードウェアの登場とその分析

TOPPERS活用アイデア・アプリケーション開発

Pervasive PSQL v11 のベンチマーク パフォーマンスの結果

PowerPoint プレゼンテーション

科学技術振興調整費 中間成果報告書 若手任期付研究員支援 組込みアーキテクチャ協調型実時間 OS 研究期間 : 平成 13 年度 ~ 平成 15 年 6 月 北陸先端科学技術大学院大学田中清史

press-1005.OHP

はじめに Web アプリケーションの発展と普及の勢いは弱まる兆しがありません 弱まるどころか 加速し続けています これは これまでの ERP CRM Web 2.0 などの Web ベースアプリケーションが提供してきたメリットを考えると 不思議なことではありません Web アプリケーションの爆発的拡

SafeG 高信頼組込みシステム向けデュアル OS モニタ Daniel Sangorrín, 本田晋也, 高田広章 名古屋大学 2010 年 12 月 3 日 この研究の一部は文部科学省のサポート受けて実施しています Daniel Sangorrín ( 名古屋大学 ) ET 横浜 2

AUTOSAR OSに対するテストケースおよびテストプログラムの自動生成

Presentation Title

コンテンツセントリックネットワーク技術を用いた ストリームデータ配信システムの設計と実装

reply_letter

PowerPoint プレゼンテーション

SpeC記述のC記述への変換 (SpecCによるソフトウェア記述の実装記述への変換)

組込み Linux の起動高速化 株式会社富士通コンピュータテクノロジーズ 亀山英司 1218ka01 Copyright 2013 FUJITSU COMPUTER TECHNOLOGIES LIMITED

1 現コンフィギュレータの問題点 1.1 独自言語 TOPPERS カーネル開発者 ( 特に TOPPERS カーネルのポーティングを行う者 ) は 現コンフィギュレータが提供する tf を使用する必要がある しかし tf は TOPPERS の独自言語であり 初めて TOPPERS カーネルを開発

PowerPoint プレゼンテーション

スキル領域 職種 : ソフトウェアデベロップメント スキル領域と SWD 経済産業省, 独立行政法人情報処理推進機構

PNopenseminar_2011_開発stack

OS

users-manual.ppt

TOPPERS 活用アイデア アプリケーション開発 コンテスト 部門 : 活用アイデア部門アプリケーション開発部門がじぇるね IoT 部門作品のタイトル : TOPPERS_ASP3 カーネルと astah*-uml による状態マシン図でのソフト設計と動作検証の試み作成者 : 塩出武 ( しおでたけ

TopSE並行システム はじめに

Microsoft Word - toppers-contest-2014_NTB.doc

TOPPERS 活用アイデア アプリケーション開発 コンテスト 部門 : 活用アイデア部門アプリケーション開発部門 作品のタイトル : Toppers_JSP と Scicos_lab / (Scilab でも可 ) による 組込みメカトロニクス制御シミュレーション 作成者 : 塩出武 ( シオデタ

情報処理学会研究報告 IPSJ SIG Technical Report Android における OS プロセス可視化環境の開発 中川裕貴 早川栄一 西野洋介 Android は,Linux カーネルと DalvikVM の二つの階層で構成されているので, 複数のプロセスの動作を理解することが困難

Microsoft PowerPoint _ncessympotakada [互換モード]

CLUSTERPRO MC ProcessSaver 2.3 for Windows 導入ガイド 第 5 版 2018 年 6 月 日本電気株式会社

アジェンダ Renesas Synergy TM プラットフォーム構成 ThreadX とは ThreadX の状態遷移 ThreadX とμITRONの機能比較 まとめ ページ 2

ジョブ管理ソフトウェア LoadStar Scheduler ご紹介資料 ~ システム運用品質の向上とコスト削減を実現 ~

OSSTechプレゼンテーション

KSforWindowsServerのご紹介

untitled

CLUSTERPRO MC ProcessSaver 1.2 for Windows 導入ガイド 第 4 版 2014 年 3 月 日本電気株式会社

POSIXプログラミング Pthreads編

日経ビジネス Center 2

IntroductionForGR-PEACH.pptx

智美塾 ゆもつよメソッドのアーキテクチャ

TRQerS - Introduction

6 2. AUTOSAR 2.1 AUTOSAR AUTOSAR ECU OSEK/VDX 3) OSEK/VDX OS AUTOSAR AUTOSAR ECU AUTOSAR 1 AUTOSAR BSW (Basic Software) (Runtime Environment) Applicat

PowerPoint プレゼンテーション

<4D F736F F D20332E322E332E819C97AC91CC89F090CD82A982E78CA982E9466F E393082CC8D5C91A291CC90AB945C955D89BF5F8D8296D85F F8D F5F E646F63>

CSPの紹介

Microsoft Visual Studio 2010 Professional Data Sheet

障害管理テンプレート仕様書

cmpsys15w07_os.ppt

Microsoft PowerPoint - ARCICD07FukumotoSlides.pptx

スライド 1

ルネサス半導体セミナースケジュール

Rational Roseモデルの移行 マニュアル

Microsoft PowerPoint - Session4古賀様.ppt

PowerPoint プレゼンテーション

共通マイクロアーキテクチャ 富士通はプロセッサー設計に共通マイクロアーキテクチャを導入し メインフレーム UNIX サーバーおよびスーパーコンピューターそれぞれの要件を満たすプロセッサーの継続的かつ効率的な開発を容易にしている また この取り組みにより それぞれの固有要件を共通機能として取り込むこと

ソフト活用事例③自動Rawデータ管理システム

スライド 1

_RISC-V Day Tokyo 2019_UAC 2.pptx

AUTOSAR OS仕様とTOPPERS/ATK2の使い方

Simulinkモデル開発における工夫事例

スライド 1

Microsoft PowerPoint - ARC2009HashiguchiSlides.pptx

141201NetSCaler_CGNAT_brochure

機能検証トレーニング コース一覧

PHP 分科会 '12/01 OpenSource 協議会 System i 2012/01/26

press-1411-ver1.pptx

Microsoft PowerPoint - yamagata.ppt

SH2A-DUALコア搭載製品SH7265のご紹介

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

PowerPoint プレゼンテーション

1 Atollic TrueSTUDIO( GR-PEACH TOPPERS/ASP ASP GR-PEACH mbed ( git

大域照明計算手法開発のためのレンダリングフレームワーク Lightmetrica: 拡張 検証に特化した研究開発のためレンダラ 図 1: Lightmetrica を用いてレンダリングした画像例 シーンは拡散反射面 光沢面を含み 複数の面光 源を用いて ピンホールカメラを用いてレンダリングを行った

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

要求仕様管理テンプレート仕様書

EnSightのご紹介

変更要求管理テンプレート仕様書

ビッグデータやクラウドのシステム基盤向けに処理性能を強化した「BladeSymphony」および「HA8000シリーズ」の新製品を販売開始

Microsoft Word - Dolphin Expressによる10Gbpソケット通信.docx

Microsoft Word - ESxR_Trialreport_2007.doc

Microsoft PowerPoint - A3② JaSST_MISRA2004ソースコード品質診断.ppt

HPE Integrity NonStop NS2300 サーバー

情報漏洩対策ソリューション ESS REC のご説明

PowerPoint プレゼンテーション

Linuxのベンチマーク評価 とボトルネック解析

本文ALL.indd

(Microsoft PowerPoint - \221g\202\335\215\236\202\335\203\\\203t\203g\203E\203F\203A\215H\212w No03\201i\224z\225z\227p\201j.pptx)

Microsoft PowerPoint - FormsUpgrade_Tune.ppt

PowerPoint プレゼンテーション

. はじめに 動作環境の全ブラウザで 本書の設定を行ってください 本設定を行わない場合 システムが 正常に動作しない可能性がありますので 必ず設定をお願いいたします また 本書の中で 画 像に番号を付与している箇所以外の設定は お使いの環境のままでご使用ください 参考 : 動作環境の全ブラウザについ

TOPPERS プロジェクトとは? TOPPERS の概要と最近の取り組み ITRON 仕様の技術開発成果を出発点として, 組込みシステム構築の基盤となる各種の高品質なオープンソースソフトウェアを開発するとともに, その利用技術を提供 組込みシステム分野において,Linuxのように広く使われるオープ

Microsoft PowerPoint emb-2-nakajima

システムインテグレータのIPv6対応

SinfonexIDaaS機能概要書

第 3 回 TERAS 成果報告会 TERAS V3 紹介と今後の展開 Tool Environment for Reliable and Accountable Software 一般社団法人 TERAS 理事開発委員長渡辺政彦 2014 年 3 月 12 日

この手の問題を診断する際に Simics は完璧なツールなのですが 実行するためには 問題が発生するプログラムを Simics に取り込まなければなりません すなわち Simics 上で Simics を実行するのです まず Simics 内部に開発ホストの複製を作成します これは何も難しいことでは

WSMGR for Web External V7.2 L50 ご紹介

Transcription:

TOPPERS プロジェクトプレス発表 2009 年 4 月 23 日 TOPPERS/FMP カーネル TraceLogVisualizer(TLV) 本田晋也 名古屋大学大学院情報科学研究科附属組込みシステム研究センター (NCES) 助教 honda@ertl.jp 1

TOPPERS/FMP カーネル 2

組込みシステムにおけるマルチプロセッサの利用 大きく二つの理由により利用が進んでいる 性能向上と消費電力削減の両立 低性能 CPU 複数個の消費電力 < 高性能 CPU1 個の性能 消極的なマルチプロセッサの利用 ソフトウェアエンジニアとしては高性能で低消費電力なプロセッサが使いたい 要件の異なるサブシステムの組み合わせ リアルタイム性と高機能性の両立 携帯電話, カーナビ,NC 工作機 サブシステムの設計の容易化 積極的なマルチプロセッサの利用 3

マルチプロセッサ対応 RTOS の必要性 (1/2) シングルプロセッサ用 RTOS の利用 各プロセッサに独立にシングルプロセッサ用のリアルタイム OS を載せる ( プロセッサによっては OS レスも ) プロセッサ間通信 プロセッサ間の同期 通信は,(OS ではなく ) アプリケーションソフトウェアレベルで実現する必要がある アプリケーション毎に開発する必要がある ある処理を別のプロセッサに移そうとすると, 同期 通信部分のプログラムの作り直しが必要 アプリレベル通信 タスク 12 を Core2 へ移動 API が異なるため書き直しが必要 OS API による通信 4

マルチプロセッサ対応 RTOS の必要性 (2/2) タスクマイグレーション 動的な負荷分散が必要な場合は, アプリケーションレベルで実現する必要がある アプリケーション毎の作り込みが必要 それぞれのコアに同じ処理を実行するタスクを用意して, 必要に応じで起動するコアを変更する 実行途中状態での処理の切り替えは困難 5

マルチプロセッサ向け OS の機能 (1/2) プロセッサ間通信のサポート アプリケーション毎にプロセッサ間の同期 通信を実現する必要がないため, 開発工数が減少する プロセッサ内通信と互換の同期 通信機能 ある処理を別のプロセッサに ( 動的にも静的にも ) 容易に移動できる タスク 12 を Core2 へ移動 API が変わらないため, 書き直しは不要 6

マルチプロセッサ向け OS の機能 (2/2) 動的な処理の割り当て ( 場合によっては ) 負荷に応じて, スループットが最大になるよう, 処理 ( タスク ) を動的にプロセッサに割り当てる タスクの途中状態での移動が可能 タスク切り替えと同じタイミングで可能 組込みシステムにおいては, リアルタイム性の観点からデメリットとなる場合があるので, 理解した上で使用することが重要 ( 後述 ) 動的に実行するコアが決定される 7

OS サポートの視点からのマルチプロセッサの分類 対称型マルチプロセッサOS(SMP-OS) プロセッサ内通信と互換のプロセッサ間通信 動的な処理 ( タスク ) の割り当て非対称型マルチプロセッサOS(AMP-OS) プロセッサ内通信と互換のプロセッサ間通信 静的な処理 ( タスク ) の割り当て OS の内部構造の違いによる性質から, AMP-OS の方が組込みに適している場合が多い SMP-OS AMP-OS 8

TOPPERS プロジェクトで開発したマルチプロセッサ用 OS ITRON 仕様をマルチプロセッサ拡張した仕様と実装を開発 非対称型マルチプロセッサ用リアルタイム OS TOPPERS/FDMP カーネル FDMP(Function Distributed Multiprocessor) 2005 年にカーネル仕様を公開 2006 年 4 月にカーネル実装をオープンソースとして公開 (1.1) 対称型マルチプロセッサ用リアルタイム OS TOPPERS/SMP カーネル SMP(Symmetric MultiProcessor) EPSON と名古屋大学との共同研究 カーネル仕様を会員向けに公開 9

FDMP/SMP カーネルに対する要望や改良点 動的なタスク移動のサポート (FDMP) サポート範囲はリアルタイム性とのトレードオフ リアルタイム性 (SMP) SMP カーネルではリアルタイム性の保障は困難 アーキテクチャ最適化 (FDMP/SMP) 特にメモリアーキテクチャに対する最適化を可能に カーネルコード共有 (FDMP) メモリのバンク数はプロセッサ数より少く, キャッシュの効率化のためには, カーネルのプログラム ( バイナリコード ) は, すべてのコアで共有 10

TOPPERS/FMP カーネル : 概要 FMP = Flexible MultiProcessor リアルタイム性と動的なタスク移動との両立を目指す コア毎のタスクスケジューリング リアルタイム性の確保が ( 比較的 ) 容易タスクを移動させる API を追加 負荷変動への対応が可能 マイグレート可能なタイミングは要検討 ポリシとメカニズムの分離 API( ユーザー ) による移動 11

TOPPERS/FMP カーネル : 開発状況 開発状況ステータス ASP カーネルをベースに開発 2009 年 5 月にオープンソースとして一般公開 サポートプロセッサ ARM 社 MPCore, ALTERA 社 NiosII ARM プロセッサの命令セットシミュレータ SkyEye リリースには含めないがサポート済み 東芝 MeP, ルネサス SH-X3,SH2A-DUAL TLV との連携 実行トレースを TLV で可視化可能 12

TraceLogVisualizer(TLV) 13

開発の背景 マルチコア環境でのデバッグ マルチコア環境では各コアが独立に並列動作 ブレークポイントやステップ実行を用いたデバッグが困難 実行後のトレースログの解析によるデバッグが有効 トレースログの解析によるデバッグ RTOSやシミュレータ エミュレータなどが出力するトレースログを解析することによって動作を確認する 開発者がトレースログを直接扱うのには限界がある トレースログのサイズや処理の複雑さによっては解析不可能 トレースログの解析を支援するツールの要求 トレースログを可視化表 するツールの開発へ 14

2 コア上で動く RTOS のトレースログの例 時系列に各コアの動作が分散 膨大な量 約 1msの間に11 個のログ [60690867]:[1]: task 4 becomes RUNNABLE. [60691406]:[1]: dispatch from task 1. [60691582]:[1]: dispatch to task 4. [60691788]:[1]: leave to dly_tsk ercd=0. [60691975]:[1]: enter to dly_tsk 視dlytim=10. [60692360]:[2]: enter to sns_ctx. 化[60692484]:[1]: task 4 becomes WAITING. [60692586]:[2]: leave to sns_ctx state=0. [60692708]:[1]: dispatch from task 4. [60692798]:[2]: enter to get_pid p_prcid=304. [60692914]:[1]: dispatch to task 1. トレースログを可視化表 し解析を 援可 15

既存の可視化ツール 組込みシステム向けデバッガソフトウェア PARTNER-Jetイベントトラッカー WatchPoint OS アナライザ WatchPoint OS アナライザ https://www.sophiasystems.co.jp/ice/products/watch point 組込みシステム向け統合開発環境 EvenTrek QNX System Profiler Unix 系 OS のトレースログプロファイラ Dtrace-Chime (Solaris) LTTV(Linux) EvenTrek http://www.esol.co.jp/embedd ed/eb_multicore2.html ログの形式が標準化されていない 汎用性に乏しい 可視化表示項目が提供されているものに限られる 拡張性に乏しい LTTV http://ltt.polymtl.ca/screen shots/ 16

TraceLogVisualizer(TLV) トレースログを可視化表示するツール 開発目標 汎用性 ログの形式に非依存化 拡張性 可視化表示項目をプラグイン化 2009 年 5 月 TOPPERS プロジェクトからリリース RTOS-A RTOS-B RTOS-C RTOS-D RTOS-A シミュレータ 様々な形式のトレースログに対応 [0867]:[1]: task task 4 beco beco [1406]:[1]: dispatch fr fr [1582]:[1]: dispatch to to time=12123s task task 4 beco beco time=12324s dispatch fr fr time=13512s dispatch to to 2342, 2342, w a32ae32, 23, 23, 0 234a, 234a, r a32ae32, 20, 20, 1 23ec, 23ec, r a32ae62, 02, 02, 0 CPU 使 率 カーネルシステムコール可視化ルールオブジェクトの変化ファイルタスクの状態遷移タスクの状態遷移標準形式へ変換図形データ 成 TLV 表 実 タスク 様々な情報表 が可能 17

TLV のスクリーンショット 可視化表 部 テキストログ表 部 表 リソース選択部 全体表 部 表 項 選択部 18

TLV 全体像 トレユーザが 意トトレースログファイル ユーザが 意 リソースファイル 読み込むトレースログの形式や標準形式トレースログで扱うリソースなどを定義したファイル ースログ出 対象毎に 意結果の保存 リソースヘッダファイル 変換ルールファイル 可視化ルールファイル TLV ファイル TLV 標準形式変換 標準形式トレースログ 図形データ 成 TLV データ 読み込んだトレースログを変換ルールファイルに従い標準形式のトレースログに変換 汎 性の実現可視化ルールファイルを標準形式トレースログに適 し図形データを 成 拡張性の実現 標準形式トレースログと図形データを zip で固めたもの 表 トレースログファイル以外のファイルは Json 形式で記述 19

今後の取り組み TraceLogVisualizer(TLV) TOPPERS プロジェクトのメンバーからのフィードバッグを反映し, 一般公開に向けて機能や品質を向上を目指す TOPPERS/FMP カーネル 組込システム向けのマイグレーション機構の研究 開発 実アプリケーションを用いた評価 マルチプロセッサ RTOS の検証技術 コンソーシアム型研究共同研究で実施 ( 後述 ) 保護機能との統合 20