ネットワーク経由で組み込みソフトのバグを修正する ――後からモジュールを追加できるITRON仕様OSの開発

原田雅章

tag: 組み込み

技術解説 2003年7月28日

●ロード・モジュールはコンフィグレータで作成する

 ベース・モジュールはシステムの基幹機能(カーネルとローダ)を1リンクし,工場出荷時に不揮発性メモリに書き込むものです.ベース・モジュールの作成方法は従来のITRON仕様のシステム構築と同じ方法で可能だと考えました.一方,動的に装着されるロード・モジュールの作成については,現在のITRON仕様では方法が確立されていません.ITRONを利用するソフトウェア開発者に,どのようにロード・モジュールを作成してもらうかの検討が必要でした.

 従来のITRON仕様(バージョン4.0)においては,開発者がシステム構成を設定する方法としてシステム・コンフィグレーション・ファイル(システム構成定義ファイル)の作成を想定しています.システム・コンフィグレーション・ファイルには,ITRON仕様で標準化されている静的APIを使ってタスクや使用するセマフォなどの構成情報を記述します.そして,ITRON仕様OSベンダが提供するツール(システム・コンフィグレータ)を使い,システム・コンフィグレーション・ファイルに基づいて,カーネルに対して資源を生成するための情報(kernel_cfg.c)を生成します.

 ここで,ロード・モジュールの構成定義を,従来のシステム・コンフィグレーション・ファイルによる生成方法と同じような方法で行うことを検討しました.つまり,従来のITRON仕様と同じ静的API書式(リスト1)で,モジュールの構成情報をファイル(モジュール・コンフィグレーション・ファイル)に記述することを考えたのです.また,モジュール・コンフィグレーション・ファイルを解釈し,ロード・モジュールが必要としている資源の生成情報(module_cfg.c)を機器のローダ機能部分に出力するツール(モジュール・コンフィグレータ)を開発しました.

 システム・コンフィグレーション情報はカーネル自身に出力されるのに対し,モジュール・コンフィグレーション情報はローダ機能部分に出力されます.ローダ機能はロード・モジュールを活性化する際にこの構成情報を参照し,ITRON仕様OSの動的サービス・コールを呼び出すことでカーネル資源を生成します.

t01_01.gif
〔リスト1〕モジュール・コンフィグレーションの記述例(タスクの生成)
ロード・モジュールのタスクを生成するμITRON/PX仕様の静的APIの一例.この記述方法は,システム・コンフィグレーション・ファイルの記述方法とまったく同じ書式である.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日