Show

Interfaceロゴ
Interface最新号

ITRON仕様セミナー

■日時:2002年7月9日(火)
■場所:機械振興会館(東京都港区)
Show&News目次へ
Interfaceトップページへ

 2002年6月に公開されたμITRON仕様保護機能拡張(μITRON4.0/PX=Protection eXtension)に関するセミナーが開催された.

会場のようすの写真

会場のようす

 今回のテーマであるμITRON4.0/PXは,μITRON4.0にMMU(など)を用いた資源保護機能を追加するもの.従来は,ある一つのタスクのバグによりカーネルを破壊したり,ほかのタスクを破壊したりすることによるシステムダウンを招く危険性があったが,保護機能を用いることによりそれらを防ぐことが可能だ.また,アドレス変換を行わないため,パフォーマンスの低下も最小限で押さえられることが特徴だ.

● μITRON4.0/PX

 会場では,まずトロン協会バージョンアップWG幹事である,豊橋技術科学大学情報工学系助教授である高田広章氏により,μITRON4.0/PXについての解説が行われた.

豊橋技術科学大学 高田広章氏の写真

豊橋技術科学大学 高田広章氏

○用語解説
 基本的な用語は以下の通りだ.
・カーネルオブジェクト
 カーネルが操作(保護)対象とする資源.タスク,セマフォ,イベントフラグ,メモリオブジェクトなど.
・保護ドメイン(protection domain)
 カーネルオブジェクトの保護範囲.異なる保護ドメインのカーネルオブジェクト同士は(基本的には)アクセスできない.1つの保護ドメインには複数のカーネルオブジェクトが存在できる.これを利用すれば,ほかのタスクが確保したメモリを操作するようなことも可能になる.
 保護ドメインにはユーザドメイン(所属する処理単位は非特権モードで実行),システムドメイン(特権モードで実行されるが,カーネルオブジェクトに対するアクセス制限あり),カーネルドメイン(特権モードで実行され,すべてのカーネルオブジェクトにアクセス可能)の3種類が存在する.
 なお,保護ドメインの動的な生成・削除は今回のバージョンではサポートせず,システムコンフィギュレーションファイルで静的に生成する(コンパイル時に決定される).カーネルオブジェクトの保護ドメインへの登録は静的/動的ともに行える.

保護ドメインの考え方の図版

保護ドメインの考え方(セミナー資料より抜粋)

○エラー処理
 許可されていないカーネルオブジェクトに対するアクセスを検出した場合,サービスコールを用いたアクセスではサービスコールがエラーを返し,通常のメモリアクセスの場合はCPUの例外ハンドラが起動される.

○アドレス変換
 μITRON4.0/PX仕様はMMU(など)の使用を想定しているにも関わらず,アドレス変換を行わない.これは,今回の仕様は「保護」を主眼にしていること,アドレス変換によるパフォーマンスの低下を防ぐことなどの理由によるものだ.高田氏によると,現場の技術者からは「(μITRON4.0/PX仕様による)パフォーマンス低下が1%程度であれば問題ないが,5%にもなると採用見送りを考える」という声が上がったとのことで,組み込み分野でのパフォーマンスに対する厳しい目が反映された結果ともいえる.
 アドレス変換を行わない結果,カーネルもタスクも同一のアドレス空間を共有し,常に論理アドレスと物理アドレスが一致する.これにより,ICEなどでのデバッグが容易に行えるという利点も生まれた.

● IIMPカーネル

 午後からはμITRON4.0/PX仕様を実装したIIMPカーネルについての解説が行われた.IIMPカーネルは,豊橋技術科学大学を中心に開発が行われているフリーなμITRON実装系であるTOPPERS/JSPに対してPX仕様を付加したカーネル.IIMPの開発には各社が参加しており,担当分野は以下の通り.

・豊橋技術科学大学:カーネル共通部
・(株)デンソークリエイト:コンフィギュレータ
・富士通デバイス(株):ARM940Tへの実装
・(株)エーアイコーポレーション:Pentiumへの実装
・(株)エルミックシステム:SH-3への実装

 実装CPUが3種類あるが,これはCISCタイプのMMUを持つCPU(Pentium),RISCタイプのMMUを持つCPU(SH-3),MPU(Memory Protection Unit)を持つCPU(ARM940T)の代表としてこれらが選択されているとのことだ.

 IIMPカーネルはμITRON4.0/PX仕様策定中のプロジェクト発足のため,仕様の主要機能のみ実装されているほか,いくつかの機能が追加されている.具体的なIIMPカーネルの特徴は以下の通り.

・タスクのスタック領域保護
・ユーザドメインは31個まで設定可能
・システムドメイン未サポート

 開発環境としてはCygwinが使用できる.


Show&News目次へ
Interfaceトップページへ

Copyright 1997-2024 CQ Publishing Co.,Ltd.

New

Engineering Life in Silicon Valley 第79回 フリー・エンジニアという仕事(第一部)
移り気な情報工学 第36回 時代間通信アーキテクチャ
フリーソフトウェア徹底活用講座 第14回 GCC2.95から追加変更のあったオプションの補足と検証(その3)

Back Number

フリーソフトウェア徹底活用講座
第13回 続々・GCC2.95から追加変更のあったオプションの補足と検証
第12回 続・GCC2.95から追加変更のあったオプションの補足と検証
第11回 GCC2.95から追加変更のあったオプションの補足と検証
第10回 続・C99規格についての説明と検証
第9回 C99規格についての説明と検証
第8回 C言語におけるGCCの拡張機能(3)
第7回 C言語におけるGCCの拡張機能(2)
第6回 GCCのインストールとC言語におけるGCCの拡張機能
第5回 続・C言語をコンパイルする際に指定するオプション
第4回 C言語をコンパイルする際に指定するオプション
第3回 GCCのC言語最適化以外のオプション
第2回 GCCの最適化オプション ――Cとアセンブラの比較
第1回 GCCの最適化オプション

移り気な情報工学
第36回 ITもの作りの原点
第35回 ビットの化石
第34回 ユビキタスなエネルギー
第33回 ロゼッタストーンとWWW
第32回 情報家電のリテラシー
第31回 草の根グリッドの心理学
第30回 自分自身を語るオブジェクト指向「物」
第29回 電子キットから始まるエレクトロニクス
第28回 映画に見る,できそうでできないIT
第27回 ITも歴史を学ぶ時代
第26回 1テラバイトで作る完全なる記憶
第25回 日本はそんなにIT環境の悪い国なのか
第24回 10年後にも生きている技術の法則
第23回 ITなギズモ
第22回 ブロードバンドネットワークに関する三つの質問

Engineering Life in Silicon Valley
第78回 インドに流れ出るシリコンバレーエンジニアの仕事
第77回 エンジニア達の健康管理・健康への努力(第二部)
第76回 エンジニア達の健康管理・なぜエンジニア達は太る?(第一部)
第75回 ユーザーインターフェースのスペシャリスト(第二部)
第74回 ユーザーインターフェースのスペシャリスト(第一部)
第73回 放浪の旅を経てエンジニアに……
第72回 凄腕女性エンジニアリングマネージャ(第二部)
第71回 凄腕女性エンジニアリングマネージャ(第一部)
第70回 ビジネススキルを修行しながらエンジニアを続ける
第69回 専門分野の第一線で活躍するエンジニア
第68回 シリコンバレーに夫婦で出向(第二部)
第67回 シリコンバレーに夫婦で出向(第一部)
第66回 目に見えないシリコンバレーの成功要因
第65回 起業・独立のステップ
第64回 インターネットバブルの前と後の比較
第63回 日本でシリコンバレースタートアップを体験する(第四部)
第62回 日本でシリコンバレースタートアップを体験する(第三部)
第61回 日本でシリコンバレースタートアップを体験する(第二部)
第60回 日本でシリコンバレースタートアップを体験する(第一部)

フジワラヒロタツの現場検証
第72回 現場検証,最後の挨拶
第71回 マイブーム
第70回 OSぼやき放談
第69回 技術者生存戦略
第68回 読書案内(2)
第67回 周期
第66回 歳を重ねるということ
第65回 雑誌いろいろ
第64回 となりの芝生は
第63回 夏休み
第62回 雑用三昧
第61回 ドリームウェア
第60回 再び人月の神話
第59回 300回目の昔語り
第58回 温泉紀行
第57回 人材ジャンク
第56回 知らない強さ
第55回 プレゼン現場にて