最新性能評価パッチは2004/3/22版です。版(jsp1.4版)パソコン版litron2のiTRONはkernelThreadとして動かしました。このバージョンはそれと同じ構造で動かすようにしたバージョンです。linux側はentry.Sにだけパッチを当てます。これはiTRONが動作中に自分自身のメモリーミスヒット等の例外発生時の対策で、モジュールでなくkernelに組み込んだ場合は必要ないパッチです。---litron_040322.tgzLinux-iTRONインタフェース-----if_litron.tgzjsp-1.4への対応とlinux2.6.1はshで動かす場合パッチが多いので、linuxを2.6.3ベースとしました。isp-1.4のオリジナルはTOPPERSプロジェクトからダウンロードしてください。一応このバージョンのCDを作成しました。ドキュメントはDOC_v1.20_rev001です。500Mbyte位の容量になります。サーバー移転でCDイメージを置けるようになりました。古いですが、カーネルのいじり方の参考にはなると思います。評価ボードーーー日立の7750ソリューションエンジンでCPUクロックは200Mhzですが、オリジナルのバス設定にかなり余裕があります。itron上に10ミリ周期でタスクを動作させ、linuxに負荷をかけた場合の動作周期のばらつきを調べています。ーーー1)ほぼ無負荷linuxを動作させ、ネットワークデーモンが動作している状態。2)デバイスをさわらないアプリ単に永久ループのアプリを動作させている状態。3)連続ファイルアクセスtelnetでログインしてcpとsyncを繰り返している状態。???)外部のパソコンより1500バイト長のpingを繰り返している状態。1秒間に200kbyteの送受信のデータで、4Mbps位の実行スピードになります。補足、古いチップですから、この程度の性能しかでない?テスト結果を整理すると!タスクの周期起動のばらつきとして測定していますが、iTRONのタスクスケジューリングの精度と考えて良いと思います。ディスクアクセスがないシステムであれば、30マイクロ秒位の誤差と考えてシステム設計してもよさそうですが、ディスクアクセスを伴うシステムの場合は600マイクロ秒位の誤差を容認できるシステムでないと無理がありそうです。スケジュールが乱れる原因はディスクアクセスがもとですが、実際はTLBのミスヒットが多発するような構成にすると乱れが大きくなります。iTRONをkernelに組み込むとディスクアクセス時のばらつきは半分になります。これはSHのアーキテクチャーに依存した話ですが、itronの動作環境がTLBの管理下にあるかないかの違いであることから明白です。テスト時のおまけページフォルトの処理自身で10マイクロ秒くらいかかることがありますから、一度、ページフォルトが発生すると20マイクロ秒くらいの遅れが発生します。llinuxの最長割り込み禁止時間はetherのドライバー動作時に6ミリ秒、CFのアクセス時に3ミリ秒くらい割り込み禁止のままになるようです。最近のソフトは煩雑!!、GUIやネットワーク屋さんはリアルタイム処理が不得意、リアルタイム屋さんはGUIとかネットワークが不得意、それなら1つのターゲットに2つのOSを実装しちゃいましょ!前提条件とりあえず、SuperHのアーキテクチャーべったりでの実装とします。割り込みのプライオリティー、linux用デバイスは0〜7、itronデバイスは8〜15を使用します。sh用linuxは7以上の設定はほとんど?ありませんが、あった場合は変更します。itronタイマーSHはタイマーが3つあるので、itron用に独立した1ms周期のタイマーを使用します。1msじゃ大まか過ぎる処理があるときは3つめをつかいましょ!現在のターゲットは日立さんのsh4ソリューションエンジン(MS7750SE01,MS7751SE01)です。みリアルタイム研究室のTOPPERS/JSPカーネルITRON上でプログラムを作る方への注意事項linuxはitronがアイドリング状態になったときに実行可能となります。低い優先度のタスクであってもダイナミックループするような処理を入れないでください。itronは正常動作しても、Linuxに実行権が移行しなくなります。動かし方itronはlinux上の一つのモジュールとして動作します。jsp現状020930版はRTLinuxよりは。思うのですが、どのような性能評価をしたものか?コンソールがやけに強気の動きをすると思っていたら、割り込み禁止にsave_and_cli()を使っていました。ドライバーはcli()っていうのがルールだと思ったのは私だけ???。