( 第９号

2006 年 3 月 20 日

発行 )TOPPERS Project Newsletter■ TOPPERS プロジェクト■
http://www.toppers.jp/

HiQOS

TOPPERS/JSP リリース 1.4.2 を公開

High Quality Open Source

TOPPERS プロジェクトは，TOPPERS/JSP カーネルの新バージインダストリアルコントロールの新しいスタンダードへョン リリース1.4.2 を 2005 年 12 月28 日より配布を開始しました．
今回のリリースは大幅なカーネル修正はありませんが，開発環境やTOPPERS プロジェクトは，組込みシステム開発に有用な高サポートプロセッサの追加などが主な変更になります．前リリース
品質のオープンソースソフトウェアと教育コンテンツを開発との主な違いを以下に列挙します．
し，組込みシステム開発に新しいスタンダードを提案します・M32C (ルネサス社の開発環境 ) の追加
・V850 の追加対策可能だと考えられます．しかし，この方法では多くのメモリリソ
・H8 (ルネサス社の開発環境 ) の追加ースが必要となり，組込み用途には受け入れられないと考えました．
・H8S (ルネサス社の開発環境 ) の追加
・MIPS3, POWERPC32, H8S ( GNU 開発環境 ) を参考実装に
そこで，TINET リリース 1.3 では，TimeWait 状態の TCP 通信端点
・xxx_unrename.h の define を _JSP_UNRENAME_H_ に修正 をタスクから切り離すことにより，タスクが待ち状態にならないよう
・Makefile 中の LANG マクロが，ロケール関連の環境変数と当た にする機能を追加しました．この方法を採用したことにより，複数のるため， PROGRAM_LANG に名称変更
通信端点を用意する方法と比較し，必要とするメモリリソースは 1/5・sil.h から kernel.h をインクルードするように変更程度に抑えることに成功しました．
・genoffset で dword ディレクティブを追加■TCP 通信端点の送受信ウィンドバッファの省コピー機能
・makedep : gcc-3.x に対応
ITRON TCP/IP API 仕様では，TCP 通信端点を生成する静的 API・syslog で long 型を出力するための %ld, %lx をサポート
で，送受信ウィンドバッファの先頭アドレスの指定に，NADR を指・H8 サポートの大幅な修正定すると，プロトコルスタックで，送受信ウィンドバッファを確保することになっています．TINET リリース 1.2 以前では，送受信ウィンドバッファの先頭アドレスの指定に，NADR を指定できない制約
目次がありました．TINET リリース 1.3 では，この制約を撤廃するととTOPPERS/JSP リリース 1.4.2 を公開........................................... 1
もに，プロトコルデータを保持するネットワークバッファを，そのまTINET リリース 1.3 と 今後の方針................................................ 1
ま送受信ウィンドバッファとすることで，TINET 内部で，データのTOPPERS対応 Eclipse 開発環境完成............................................ 2
コピーを省くよう改良しました．特に，省コピーAPI を使用すること
FDMPカーネル 一般公開開始 ......................................................... 2
により，API におけるデータのコピーも行わないことも可能です．
FlexRay通信ソフトウェア 早期リリース開始 .............................. 3
この省コピー機能により，必要とするメモリ容量が大幅に削減するこ
TOPPERS開発者会議....................................................................... 3とができました．
TOPPERSビジネス用メーリングリスト新設.................................. 3
機能RAMROM計（byte）
TOPPERSカンファレンス 2006 ...................................................... 4
TCP
1,510
22,46823,978
参加のお誘い...................................................................................... 4
ICMP
0
1,386
1,386
お問い合わせ先.................................................................................. 4

TINET リリース 1.3 と 今後の方針
TINET は，組込みシステム向けオープンソース TCP/IP プロトコル
スタックとして，苫小牧工業高等専門学校で研究・開発し，2004 年2 月の公開以来，2006 年 2 月末までに約 6,000 件のダウンロード実績のあるプロトコルスタックです．2006 年 2 月 7 日に公開を開始したリリース 1.3 では，TCP の処理機能と，必要とするメモリ容量を削減するための改良を行いました．
＜TINET リリース 1.3 機能紹介＞■タスクからの TimeWait 状態の TCP 通信端点分離機能
TCP 通信端点は，ソケットインタフェースにおけるファイルディスクリプタと異なり，TCP の接続状態が完全に終了するまで再利用可能とはなりません．TCP/IP プロトコルの仕様に従うと，接続状態が完全に終了するまで数分かかる場合があります．サーバ側から切断する応用プログラム ( WWW など ) のタスクでは，タイムアウトするまで，次の接続要求を受信することができません．これらの対策として，複数の TCP 通信端点と，これと同数のタスクを用意することでIPARP
TCP/IP 共通機能
汎用通信機能イーサネットネットワークバッファ小計
応用プログラム
カーネル
合計

0160
84
1,170
2,136
1,926
6,986
2,276
4,966
14,228

940
2,506
3,572
2,792
3,996
1,742
39,402
8,824
30,19878,424

940
2,666
3,656
3,962
6,132
3,668
46,388
11,10035,164
92,652■その他の必要メモリ容量削減機能
TCPとUDPのノンブロッキングコールの無効化
ノンブロッキングコールを使用しない場合は，TCP と UDP のノンブロッキングコール機能を組込まないことができます．
TCP受付口の無効化
クライアント機能のみで構成され，相手からの接続要求を受け付けないのであれば，TCP 受付口は不要であり，この TCP 受付口と，処理関数を組込まないことができます．

TCPとUDPのAPIライブラリ化
TCP と UDP の API 関数をライブラリ化し，呼び出されることのない API 関数は組込まれないようにしました．
■TCP ヘッダのトレース出力機能
送受信する TCP セグメントの TCP ヘッダと TCP 通信端点の情報を出力する機能を公開しました．ネットワーク上のプロトコルのやり取りを表示することができるため，デバッグ等に活用できます．
＜組込みシステム向けネットワーク接続ソフトウェア群の開発＞
この研究は，平成 17，18 年度に北海道立工業試験場が中心となり，名古屋大学，道内企業，苫小牧工業高等専門学校と共同で以下の研究・開発を実施しています．
１．TINET の機能追加 ( ITRON TCP/IP API の拡張機能 )２．応用プログラム開発 ( DNS Resolver，DHCP クライアント等 )３．組込み向け WWW サーバ
４．ITRON 用 IPSec のサブセット仕様
５．組込みネットワークソフトウェアの信頼性検証技術
６．製品への適用と評価
TINET に関しては，実装完了機能から順次 TOPPERS プロジェクトから早期リリースし，最終的に TINET リリース 1.4 として公開します．また，その他の機能に関しては，TINET への組込み方法を検討し，オープンソースで公開する予定です．
最後に，更にその後の研究・開発のテーマとして，ソケットインタフェースへの対応や IPv4 と IPv6 のデュアルスタック化など考えていますが，バグの少ない枯れたソフトを目指して，TINET の改良も進めて行きたいと考えています．

TOPPERS 対応 Eclipse 開発環境完成＜開発環境の昨今＞
統合環境と質の転換
今から 15 年ほど前，会社に並ぶ標準機は NEC 製 PC9801 で，OSは MS-DOS，ウインドウシステムはありませんでした．さまざまなワードプロセッサソフトウェアといくつかの表計算ソフトウェアがあり，利用者はお気に入りの環境を使っていました．
この環境には，豊かな多様性がありましたが，いくつかの問題もありました．一番大きな問題は，操作の統一性，連続性です．昨今は，ワードプロセッサの文書の中に，表計算ソフトのワークシート，もしくはグラフを容易に埋め込む事ができます．しかし 15 年 前は，表計算ソフトの結果をプリンタで出力し，一回ソフトウェアを終了し，ワードプロセッサソフトウェアを立ち上げ，紙に書いた内容を元に罫線でグラフを描く．今の我々から見ると，なんて面倒な世界でしょうか．
しかも，似た機能を持つワードプロセッサは複数種類あって，少しずつ操作手順が違うときています．当時の我々は苦々しく思いながら，「そういうものだ」と納得していました．しかし，今さら当時のような環境で文章を書く気になるでしょうか？
組込み開発現場に目を移すと，ソフトウェアの運用形態が，15 年前のオフィスソフトウェアと似た状況だと思いませんか？現在複数のデバッグ用ハードウェアがあり，コントロールソフトも多種多様です．ツール間の連携は十分でなく，各フェーズでそれぞれユーザインタフェースが違う操作を要求されることがあります．これは開発効率やソフトウェアの信頼性にも影響する可能性があります．逆説
的に，生成される製品の開発効率や信頼性を上げるためには，ツールの整備が大切と言えます．ツールだけが全てを解決する訳ではありませんが，ツールによって開発の質が転換することは確かです．
TOPPERS で今すぐ使える統合開発環境
現在の開発ツールは，統合開発環境と呼ぶに相応しいものも登場してきています．しかし，それらの多くは，ツールベンダが推奨する(大抵はツールベンダが販売している)ターゲットオペレーティングシ
ステムに最適化されており，TOPPERS カーネルがその恩恵に預かるには少なからずの手間がかかります．
Eclipse/CDT
オープンソース統合開発環境フレームワーク Eclipse は数多くの言語の開発環境として利用できます．例えば，CDT という C/C++開発環境が Eclipse 上に提供されています．CDT は必要最低限の機能を提供しており，少し頑張れば，TOPPERS カーネルのビルドも行えます．TOPPERS プロジェクト会員である(株)アルファプロジェ
クトは，ほぼ素のCDTを用いた開発キットを有償配布しています．
＜PizzaFactory3 登場＞
TOPPERS プロジェクトの理事会員である(資)もなみソフトウェア
は ， TOPPERS カ ー ネ ル 開 発 に 特 化 し た 統 合 開 発 環 境
PizzaFactory3 を開発しました．PizzaFactory3 は，Eclipse/CDTをベースとして，TOPPERS カーネルに最適な環境を提供します．
■高速コンパイラ
PizzaFactory2 は GNU ベース環境と比較し，10 倍程度高速なビルドを実現していました．PizzaFactory3 もこの高速コンパイラ技術をそのまま継承しています．
■マネージドビルドベース
Eclipse/CDT には，makefile を明示的に記述するスタンダードビルドと，makefile を自動生成する先進的なマネージドビルドの 2 つのビルドモデルに対応しています．PizzaFactory3 はマネージドビル
ドルールも採用することによりビルドリソース管理工数を軽減し，従来のスタンダードビルドベース開発の敷居を低くすることを実現しています．一方，makefile の断片を追加することが可能で，痒いところに手が届く環境を提供しています．
■小規模組込み向けデバッガインタフェース
Eclipse/CDT は，デスクトップ/サーバアプリケーションの開発を前提としている部分がいくつかあり，その一つにデバッガインタフェースがあります．小規模組込みが用いるフリースタンディング環境への対応は，CDT に付属のデバッガインタフェースでは不十分です．
PizzaFactory3 では，デバッガインタフェースに拡張を加えました．
■ビルドツールの構成管理
ソースコードの構成管理は，信頼性を高めるための第一歩であり，Eclipse はソースコードの構成管理ツールとの統合がなされています．さらに高信頼性を確保するためには，ビルドツールの構成管理も重要です．しかし，ツールの構成管理の支援機能は Eclipse や他の組込み向け統合開発環境の多くも実現できていません．
PizzaFactory3 では，ビルドツールを Eclipse のプラグイン構成管理機能と統合し，ビルドツールの構成管理を実現しました．
さらに，ビルドツールをプラグインと同様に配信する機能も備えています．
複数の開発者がいる環境で構成を揃える事が容易になります．
■無償バージョンの提供
PizzaFactory3 の中心部分は，独立行政法人情報処理推進機構(以下IPA)のオープンソースソフトウェア活用基盤整備事業により開発された成果物を利用しています．PizzaFactory3 は有償な製品です
が，TOPPERS カーネルをビルドしデバッグするための中心部分はソースコードも含め無償で提供されます．3 月末に TOPPERS プロ
ジェクト会員向けに早期リリースされます．

FDMP カーネル 一般公開開始
TOPPERS プロジェクトでは，次世代のリアルタイム OS 開発の一環として，μITRON 仕様準拠のリアルタイム OS ( RTOS ) を，機能分散マルチプロセッサ向けに機能拡張した TOPPERS/FDMP カーネルの仕様検討・実装・評価を進めてきました．この度，その開発成果をオープンソースソフトウェアとして，3 月 22 日より一般配布することになりました．
FDMP カーネルの開発の一部は，IPA の 2004 年度未踏ソフトウェ
ア創造事業の採択テーマの 1 つである，「マルチプロセッサシステムに対応したシステムレベル開発環境の開発」の一環として開発されました．
＜FDMP カーネルの主な特徴＞
・機能分散マルチプロセッサ上でのアプリケーション開発を効率化
・μITRON 仕様 OS 向けのソフトウェア資産が活用可能
・性能を重視した実装
・新たなターゲットプロセッサへのポーティングが容易＜ターゲットシステム＞
プ ロ セ ッ サ
N io s 2
M ic r o b la z e

メ ー カア ル テ ラ
ザ イ リ ン ク ス＜開発環境＞
FDMP カーネルは，GCC などの GNU 開発環境を，標準のソフトウェア開発環境としています．インライン関数やインラインアセンブラ機能など， GCC の拡張機能を用いている部分があります．

FlexRay-NM ( Network Management ) ， TT-COM ( Time
Triggered Communication ) から構成されています．TT-COM は，OSEK/VDX から公開されている FT-COM ( Fault Torrerant
Communication ) 機能を参考に，FlexRay 通信に求められる通信ミドルウェアに必要な機能に対応しています．また，FlexRay-NMと呼ぶネットワーク監視機能も同時に開発し，車両内で重要となるノードの接続状況やノードの WakeUp/Sleep 機能など，基本となるネットワーク監視機能に対応しています．
今回早期リリースするソフトウェアセットの対応プロセッサは，ル
ネサス製 M32C であり，対応する FlexRay デバイスはルネサス製
FlexRay デバイスとなります．これらのソフトウェアセットは
TOPPERS ライセンスによるオープンソース公開となりますが，デバイスドライバ部のみ，ライセンスの問題により，当分の間はバイナリオブジェクトでの提供になります．

TOPPERS 開発者会議
2006 年 3 月 17 日～18 日，「ヤマハリゾートつま恋」
にて TOPPERS開発者会議を開催しました．会議には，TOPPERS プロジェクトの開発成果物を開発したり，サポートを担当していただいているメン
バー17 名が参加しました．参加者はμITRON のフルセットカーネ
ルである TOPPERS/FI4 ( Full set ITRON 4 ) や次世代の高信頼カーネルである TOPPERS/HRP ( High Reliability Profile ) カーネ
ルのコードレビューを行い，熱い議論を繰り広げました．

FlexRay 通信ソフトウェア 早期リリース開始
TOPPERS 会員である(株)ヴィッツと(株)サニー技研は，次世代車載LAN 規格である FlexRay 通信用ソフトウェアセットを 3 月末からTOPPERS プロジェクト会員向けに早期リリースいたします．このソフトウェアセットは，次世代車両用の標準的な LAN として最有力である FlexRay 通信を実現するものであり，名古屋大学の高田研究室および国内の自動車メーカの協力を得て開発しました．
FlexRay 通信の特徴は，従来の CAN 通信に代表されるイベント駆動型通信ではなく，タイムトリガ駆動型の通信であることです．そのため従来のリアルタイム OS ( RTOS ) では実現が困難でした．今回公開するソフトウェアセットは，FlexRay 通信を実現する通信ミ
ドルウェアばかりでなく，タイムトリガ駆動型に対応した RTOSとして，TT-OS (Time Triggered Operating System ) も含まれています．車両用のタイムトリガ駆動型 OS は，欧州を中心に組織化された OSEK/VDX から，OSEKtime ( Time-triggered OperatingSystem ) の仕様が策定および公開されています．今回リリースするTT-OS は，
OSEKtime とは仕様も性格も異なるOS となります．
この違いは，仕様検討時に想定した制御対象で FlexRay 通信を利用するにはどのような要求や機能が必要かを国内の自動車メーカにヒヤリング調査をし，OSEKtime の仕様は必ずしも自動車メーカが望んでいる仕様でないことを確信したため，OSEKtime 仕様は参考程度とし，新規に仕様の策定をしたためです．
OSEKtime 仕様は，タイムトリガ駆動されるタスクが最優先であり，非タイムトリガ処理は，タイムトリガ処理の空き時間に実行されます．すなわち，非タイムトリガ処理は例え割込み処理であっても，タイムトリガ処理が優先される仕様です．この性質をそのまま車両制御に用いた場合，制御処理がタイムトリガ通信により阻害されることとなり，緊急を要する処理には利用が難しいことを意味します．TT-OS はこれらの特徴を改善し，タイムトリガ処理とイベントトリガ処理が両立できることを重視した仕様となっています．
また，FlexRay 通信ミドルウェアは，FlexRay デバイスドライバ，

左：開発者会議状況 右：徹夜部屋で朝方まで議論をしていた

TOPPERS ビジネス用メーリングリスト新設
TOPPERS プロジェクトでは，会員からの告知用メーリングリストを新設することにいたしました．このメーリングリストは，会員間の情報交換や各種募集の場所として利用していただけます．
メーリングリスト名：
business@toppers.jp
メーリングリスト趣旨：
・会員間でのビジネスマッチングの場である．
・一方的な宣伝ではなく，ビジネス／開発パートナー募集などを主な内容とする．
登録／投稿の方法：
・登録できるのは会員のみ．会員は自由に登録が可能．
(他の ML 同様に Web より登録できます)
・投稿は事務局のみとし，会員は事務局宛に送付を依頼する．
登録会員の皆様に不要な案内や迷惑な案内にならないよう，上記の趣旨に沿った内容のみを事務局より送付いたします．会員間の有効かつ効果的な情報交換の場として活用していただければ幸いです．

TOPPERS カンファレンス 2006
TOPPERS プロジェクトでは，2006 年 5 月 26 日にタワーホール船
堀 ( 東京都江戸川区 ) において，TOPPERS カンファレンス 2006
( 以下，カンファレンス ) の開催を予定しています．
第 3 回を迎える本カンファレンスのテーマは，「HiQOS ( HighQuality Open Source ) です．Open Source かつ High Quality な
RTOS の探求を意図しています．これまでありそうで実際には無かった新たなオープンソースの創造を予感するキャッチフレーズでTOPPERS プロジェクトの存在価値・目指すべき方向性が一言で表現されています．
■日 時：2006 年 5 月 26 日 ( 金 ) 10:00－20:30 ( 9:30 受付開始)■会 場：タワーホール船堀
http://www.city.edogawa.tokyo.jp/shisetsu/bunka/bunka1.html
東京都江戸川区船堀 4-1-1 / TEL 03-5676-2211■主 催：NPO 法人 TOPPERS プロジェクト■定 員：140 名 ( 先着順にて受付 )■参加費：会員：10,000 円/ 非会員：15,000 円/ 学生： 5,000 円■参加申込：Web よりお申込ください．(準備中)■問合せ先：TOPPERS プロジェクト事務局 ( 担当：真鍋 )＜プログラム＞( 敬称略 )
[基調講演]「TOPPERS プロジェクトの活動と今後(仮)」高田 広章 ( TOPPERS プロジェクト会長/名古屋大学 )[オーバービューセッション]「TOPPER 採用製品開発のためのオープンソース統合開発環境」
邑中 雅樹 ( ( 資 ) もなみソフトウェア )「マルチプロセッサに対する TOPPERS プロジェクトでの取り組み」
本田 晋也 ( 名古屋大学 )「組込みソフトウェア教育における TOPPERS の使い方」
山本 雅基 ( 名古屋大学 )その他２講演程度を予定しています．
[チュートリアルセッション]「TOPPERS カーネルベースの OS に求められる品質とその検証方法」
渡辺 雄一 ( ( 株 ) エーアイコーポレーション )「FlexRay 通信ミドルウェアの解説と活用事例紹介」
服部 博行( ( 株 ) ヴィッツ )■オーバービューとチュートリアルはパラレルセッションとなります。ご希望のプログラムをお選びください．
[特別講演]「数理的技法のフィールドワーク」
木下 佳樹 ( 産業技術総合研究所 システム検証研究センター )[懇親会 ＆ ミニ展示 ］
ライトニング・トーク
TOPPERS of the Year 発表

2005 年 4 月～2006 年 3 月において，TOPPERS プロジェクトが世間から大きな注目を集めるきっかけとなった活動に栄誉を与え表彰します．
＜ライトニング・トーク＞
数分間の短い発表を入れ代わり立ち代り行うライトニング・トーク
セッションを企画しています．新しいアイディア，ちょっと変わった切り口，少々強引な議論，伝えたいことがある等，短い時間で聴衆を湧かせていただけるような講演・トークを期待しています．
登壇していただける発表希望者を募集いたします．詳細はTOPPERS カンファレンス 2006 の参加者募集案内をご覧ください．

参加のお誘いTOPPERS プロジェクトでは，プロジェクトの趣旨に賛同してくださる方の参加を待っています．プロジェクトの会員となることで，次のようなメリットがあります．
・プロジェクトにおけるソフトウェア開発に参加できる・プロジェクトで開発したソフトウェアを早期に入手できる・プロジェクトで開発するソフトウェアに対して要望をだせる・プロジェクトの主催・共催するセミナに会員費用で参加できる
NPO 法人の会員には，主に団体を対象とした正会員と，個人を対象とした準会員に加えて，プロジェクトに貢献していただける教育機関・公的機関・非営利団体・個人で会費を支払うことが難しい方を対象とした特別会員の制度を用意しています．
TOPPERS プロジェクトに何らかの形で貢献されたい方，プロジェクトで開発したソフトウェアをお使いの方，プロジェクトに興味をお持ちの方は，是非入会をご検討ください．

会員の種別
会員の種別
正会員

資格
団体または個人

準会員

入会金
団体：１０万円
個人：２万円
５０００円

個人
プロジェクトに貢献があると認められる教
特別会員なし
育機関･公的機関･非営利団体･個人なし

お問い合わせ先TOPPERS プロジェクトに関するご質問や入会の申込みは，下記事務局宛にお願いします．また，プロジェクトのウェブサイト( http://www.toppers.jp/ )には，活動の詳細を紹介する資料を置いていますので，ぜひご参照ください．
編集後記
最後までお付き合いくださりありがとうございます．5 月にはプロジェクトの祭典であるカンファレンスを企画しています．皆様のご参加をお待ちしております．ニュースレターへのご意見がございましたら， (株)ヴィッツ服部( hat ＠witz-inc.co.jp )まで，ご連絡いただければ幸いです．

＜第２回 TOPPERS of the Year＞

NPO 法人 TOPPERS プロジェクト

http://www.toppers.jp/〒103-0007 東京都中央区日本橋浜町 1-8-12 東実年金会館 8F
社団法人 日本システムハウス協会内
TEL&FAX (03)3865-5616
Email: secretariat@toppers.jp※“TOPPERS”および TOPPERSプロジェクトのロゴは，TOPPERSプロジェクトの登録商標です※TRONは”The Real-time Operating system Nucleus”の略称,ITRONは”Industrial TRON”の略称,μITRONは”Micro Industrial TRON”の略称です.
※ 本文中の商品名およびサービス名は,各社の商標または登録商標です.

年会費
団体：１０万円
個人：２万円
５０００円