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

原田雅章

tag: 組み込み

技術解説 2003年7月28日

 しかし,リンク機能を機器側に搭載するためには実装メモリを増やさなければなりません.なるべく容量を小さく抑えたい組み込み機器では,これは許されないと考えました.また,ローディング時にも基幹システム機能を止めないで動作させようと考えると,機器側の処理オーバヘッドも気になります.そこで,リンク機能は汎用OSが搭載されたサーバ側に,ローダ機能は機器側に持ち,通信セッションにおいて機器とサーバが協調動作することによりアドレス解決を行う方式を採用しました(図7)

 具体的には,機器とサーバは以下のように動作します.

  • 機器はダウンロード実行時に,機器のID番号,取得したいモジュールのID番号(ロード・モジュールID),バージョン番号,機器のメモリ・マップ情報をサーバに送る.
  • サーバは,通知された情報(機器ID,ロード・モジュールID,バージョン番号)に基づき,生成するロード・モジュールを特定する.また,通知されたメモリ・マップ情報から機器の空きメモリを検索し,ロード・モジュールの各メモリ・セクションに対して,静的に物理アドレスを割り付けたロード・モジュール・ファイルを生成する.このとき,サーバはロード・モジュールが必要としているカーネル資源の生成情報もロード・モジュール・ヘッダ情報として生成する.
  • 機器はロード・モジュールとヘッダ情報ファイルを取得し,実行コードを不揮発性メモリに書き込む.また,ロード・モジュールをITRONの処理単位として活性化するために必要なカーネル・オブジェクト(タスク,セマフォなど)を生成し,メモリ・オブジェクトを登録する.

f07_01.gif
〔図7〕 リンク機能とローダ機能を分離した
リンク機能は汎用OSが搭載されたサーバ側に,ローダ機能は機器側に持ち,機器とサーバが協調動作する方式を採用した.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! 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日