Howto

Armadillo-400シリーズでOS-9を動作させる(2: OSイメージの作成)

OS-9について

OS-9はコンパクト、高速でセキュアなプロセスモデルの組込用リアルタイムOSです。 組込業界で20年以上の採用実績があり、特に試験計測、FA、メディカルなどのクリティカルなリアルタイム性能を要求される分野で広く使われています。

本シリーズでは、Armadillo-400シリーズでOS-9を動作させる方法を4回に分けて紹介します。
Howto : Armadillo-400シリーズでOS-9を動作させる(1: SDKのインストール)
Howto : Armadillo-400シリーズでOS-9を動作させる(2: OSイメージの作成)
Howto : Armadillo-400シリーズでOS-9を動作させる(3: Armadilloへの書き込み)
Howto : Armadillo-400シリーズでOS-9を動作させる(4: ユーザープログラムの作成)
本文中でArmadillo-410,420,460用の設定が明記されていない個所はArmadillo-440と同一の設定を行ってください。

ConfigurationWizardを使ってOSイメージを作成する

Configuration Wizard を起動します。

スタートメニュー⇒プログラム(すべてのプログラム)⇒RadiSys⇒Microware OS-9 for ARM9 v5.0を辿り、Microware Configuration Wizard をクリックします。

Start Configuration Wizard

または、コマンドプロンプトを開いて os9p を実行します。

Exec os9p.exe

Configuration Wizard が起動します。

Configuration Wizard: Start

Select a board が Armadillo-440 になっている事を確認し、「Create new configuration」を選んで新しいコンフィグレーション名を入力します。ここでは「TEST」とします。

Beginner Mode を選んで「OK」をクリックします。

Configuration Wizard: New Configuration

Romcore Type は Armadillo-440 のみです。このまま「次へ」をクリックします。

Configuration Wizard: Select RomCore Type

ROM Memory List を選択します。次の設定から選ぶ事が出来ます。

設定RAM Search ListROM Search List備考
default0x80800000~0x87C000000x80100000~0x80800000 
Armadillo-440 RAM based0x80800000~0x880000000x80100000~0x80800000Armadillo-440向け設定
Armadillo-420 RAM based0x80800000~0x840000000x80100000~0x80800000Armadillo-420向け設定
RAMの検索範囲が64MBまで
Armadillo-440 Flash based0x80100000~0x880000000xA0020000~0xA0800000Armadillo-440でOS-9をFLASH上で直接実行
・RAM Search List はシステムRAMとして使用する領域を示します。
・ROM Search List はOS-9のモジュールを検索する範囲を示します。

Configuration Wizard: ROM Memory List

ここでは、「Armadillo-440 RAM Based」を選択して「次へ」をクリックします。

Configuration Wizard: ROM Memory List Selected

ROMBug(デバッガ)の設定をします。「RomBug」または「None」の何れかを選択する事が出来ます(「Remote」は使用出来ません)。「RomBug」選択時に「Enter Debugging On Power Up」にチェックを付けるとカーネルを起動する前にデバッガ画面で停止します。

ここでは、「RomBug」を選択し、「Enter Debugging On Power Up」のチェックは外し、「次へ」をクリックします。

Configuration Wizard: Define Debugger

ここでは、Low-Level Ethernetの設定を行いますが、Armadillo-440ではLow-Level Ethernetはサポートしていませんので、このまま「次へ」をクリックします。

Configuration Wizard: Low Level Ethernet Setup

ここでは、SLIPの設定を行いますが、OS-9 for Armadillo-440ではSLIPをサポートしていませんので、このまま「次へ」をクリックします。

Configuration Wizard: SLIP Setup for Remote Debugging

ROM Ports の設定をします。ここで設定したConsole Portは、OS-9カーネルが起動するまでのメッセージ出力と、RomBugの表示/入力に利用されます。Armadillo-440のシリアルポートはUART-2なので「UART-2」を選択します。Communication Port は使用しませんので「None」を選択します。
設定を確認したら「次へ」をクリックします。

Configuration Wizard: Define ROM Ports

ここでは、Boot Option を選択しますが、OS-9 for Armadillo-440 では BootをHermit-Atで行うため設定を変更しないで下さい。なお、「Break - Enter System Debugger」のチェックが付いているとOS-9上でbreakコマンドによりRomBugモードになります。チェックを外すとbreakコマンドが組み込まれません。開発環境として使用する場合はチェックを付けたままにして下さい。
設定を確認したら「次へ」をクリックします。

Configuration Wizard: Define Other Boot Options

ここでは、OS-9のコンソールターミナルに使用するデバイスを選択します。Armadillo-440のシリアルポートはUART-2なので「UART-2」を選択します。「Term Pause On」にチェックを付けると1画面分表示する度にポーズ状態になります。通常はチェックを外しておきます。
設定を確認したら「次へ」をクリックします。

Configuration Wizard: Define /term Port

ここではRAMディスクの設定を行います。RAMディスクを使用する場合は「Enable RAM disk」にチェックを付けて、容量を選択します。「Map RAM disk as /dd」のチェックはRAMディスクを/dd(デフォルトドライブ)に割り当てるかの設定ですが、現在のOS-9のバージョンではaliasで代用するため効果はありません。
設定を確認したら「次へ」をクリックします。

Configuration Wizard: RAM Disk

ここではネットワークの設定を行います。

有線LANを使用する場合は、Ethernet Connection - i.MX on-chip FEC - spfe0 にチェックが必要です。Ethernet Card Configuration の Card Name には spfe0 を入力し、Configured Enabled にチェックを付けます。

Configuration Wizard: Network Interface

固定IPを設定する場合は「Specify an IP address」を選択し、Address と Subnet Mask にIPアドレスとサブネットマスクを入力します。DHCPを利用する場合は「Server assigned IP address」を選択します。
設定を変更したら、「Commit Change」ボタンを押して下さい

なお、MACアドレスは自動設定しますので、00:00:00:00:00:00のままで構いません。

Configuration Wizard: Setup IP Address and Subnet

「Commit Change」で設定が反映されたのを確認したら、「次へ」をクリックします。

Configuration Wizard: Network Commit Change

DNSの設定をします。ここでは特に設定しませんので「次へ」をクリックします。

Configuration Wizard: DNS Configuration

Gatewayの設定をします。ここでは特に設定しませんので「次へ」をクリックします。

Configuration Wizard: Gateway Configuration

SoftStax(プロトコルスタック)の設定をします。このまま「次へ」をクリックしても構いませんが、ここではNFSクライアントとリモートデバッガの設定を行います。

Configuration Wizard: SPF Setup

NFSクライアントを利用する場合は「Start NFS client」にチェックを付けます。また、リモートデバッガ(ホストPC上のHawk Debugger)を使用する場合は「Start spfndpd (user-state debugging」にチェックを付けます。
設定を確認したら、「次へ」をクリックします。

Configuration Wizard: SPF Setup (NFS and Debugging)

ここではInitモジュールの設定を行います。

Configuration Wizard: Init Options

まず、タイムゾーンの地域設定を「Osaka, Soul, Tokyo」に変更します。TZの表示は「Asia/Tokyo」になります。

Configuration Wizard: Timezone

タイムゾーンにAsia/Tokyoを選択した場合に不具合がある事が確認されていますので、それを回避するために、TZに「Etc/GMT-9」を入力します。

Pre-I/O に「idle」を入力すると、実行すべきプロセスが存在しない状態になった時にCPUを停止します。空欄のままにした場合はアイドルループで待機するようになります。省電力効果はそれ程ではありませんが、「idle」を入力しておく事をお勧めします。
設定を確認したら、「次へ」をクリックします。

Configuration Wizard: Change TZ and Setup idle module

OSイメージを作成します。

この時点ではOSイメージは作成されていません。まだ「完了」はクリックしないで下さい。

Configuration Wizard: Build Image

Build Type には「Coreboot+Bootfile」を選択します。

必要なオプションにチェックを付け、不要なオプションのチェックを外してください。

ここでは、「Debug Tool Support」と「User Commands」を追加でチェックします。

「Check」をクリックしてOS構築のチェックを行います。必要なファイルが揃っていれば正常に終了します(ドライバをカスタマイズする途中などで必要なファイルが不足しているとエラーになります)。

Configuration Wizard: Build Image Add Option

チェックが正常終了したら、「Build」をクリックしてOSイメージを作成します。

Configuration Wizard: Build Image (Check)

OSのイメージファイルは Image Location で示されるファイルとして作成されます。

処理が正常終了したら、「完了」をクリックしてConfiguration Wizardを終了します。

Configuration Wizard: Build Image (Build)

終了時に設定を保存するか確認のダイアログが表示されます。保存する場合は「はい」をクリックします。

Configuration Wizard: Save current changes

作成したOSイメージファイルは、Build 時にImage Locationで示されたファイルとして作成されます。
(この例では、C:/MWOS/OS9000/ARMV5LE/PORTS/Armadillo440/BOOTS/INSTALL/PORTBOOTフォルダに、「rom」というファイル名で作成されます)。

PORTBOOT rom file

作成されたOSイメージファイル(romファイル)をmicroSDカードに保存するか、Armadillo本体のフラッシュメモリへ書き込みます。

OSイメージの書き込みについては、 Howto : Armadillo-400シリーズでOS-9を動作させる(3: Armadilloへの書き込み) を参照して下さい。

本Howto及びOS-9に関するお問合せはこちら

株式会社フォークス
TEL: 03-5603-2301
E-mail: atos9info@yaya.forks.co.jp
URL: http://www.forks.co.jp/