フラッシュメモリマネージメントユーティリティを実行するには
run
コマンドを使います。
実行する前に、updateflash プログラムが入った Milo を利用可能なデバイスに
置いておかねばなりません。
updateflash プログラムは vmlinux と同じように
gzip で圧縮しておくことができます。
フラッシュメモリマネージメントユーティリティを実行するには、
次のようにして Milo の run
コマンドを実行します:
MILO> run fd0:fmu.gz
フラッシュメモリマネージメントユーティリティの初期化がすむと
フラッシュメモリデバイスに関する情報がいくつか表示され、
コマンドプロンプトが現れます。
ここでも help
コマンドが有用です:
Linux Milo Flash Management Utility V1.0
Flash device is an Intel 28f008SA
16 segments, each of 0x10000 (65536) bytes
Scanning Flash blocks for usage
Block 12 contains the environment variables
FMU>
注意:
AlphaPC64 などのシステムには、
複数のフラッシュメモリブロックと環境変数を保存する場所があります。
フラッシュメモリマネージメントユーティリティは
Milo の環境変数が保存されているブロックを探します。
もしそのようなブロックがすでに存在していれば、
それがどこに存在しているか表示されます。
そうでない場合は、
environment
コマンドを使って初期化するブロックを指定せねばなりません。
上の例ではフラッシュメモリブロック 12 に Milo の環境変数が保存されています。
FMU> help
FMU command summary:
list - List the contents of flash
program - program an image into flash
quit - Quit
environment - Set which block should contain the environment variables
bootopt num - Select firmware type to use on next power up
help - Print this help text
FMU>
注意:environment
コマンドと bootopt
コマンドは、
EB66+、AlphaPC64、EB164 (互換)システムのみで使用可能です。
"list" コマンドは現在のフラッシュメモリの使用状況を表示します。 2 つ以上のフラッシュメモリブロックがある場合には、 それぞれのブロックの使用状況が表示されます。 下の例では、 Windows NT ARC ファームウェアがブロック 4 から 7 と ブロック 15 を使用しています。
FMU> list
Flash blocks: 0:DBM 1:DBM 2:DBM 3:WNT 4:WNT 5:WNT 6:WNT 7:WNT 8:MILO
9:MILO 10:MILO 11:MILO 12:MILO 13:U 14:U 15:WNT
Listing flash Images
Flash image starting at block 0:
Firmware Id: 0 (Alpha Evaluation Board Debug Monitor)
Image size is 191248 bytes (3 blocks)
Executing at 0x300000
Flash image starting at block 3:
Firmware Id: 1 (Windows NT ARC)
Image size is 277664 bytes (5 blocks)
Executing at 0x300000
Flash image starting at block 8:
Firmware Id: 7 (Milo/Linux)
Image size is 217896 bytes (4 blocks)
Executing at 0x200000
FMU>
フラッシュメモリマネージメントユーティリティは 圧縮された Milo のフラッシュイメージを持っています。 "program" コマンドはこのイメージをフラッシュメモリに書き込みます。 このコマンドを実行する前に "list" コマンドを使って Milo をどこに入れることができるか見ておきましょう。 すでに Milo がフラッシュメモリに入っている場合には、 上書きするかどうか訊ねられます:
FMU> program
Image is:
Firmware Id: 7 (Milo/Linux)
Image size is 217896 bytes (4 blocks)
Executing at 0x200000
Found existing image at block 8
Overwrite existing image? (N/y)? y
Do you really want to do this (y/N)? y
Deleting blocks ready to program: 8 9 10 11
Programming image into flash
Scanning Flash blocks for usage
FMU>
電源を切る前にこれが終わるのを待ちましょう。
注意:
すでに存在しているフラッシュメモリイメージを上書きすると、
システムを壊してしまうかもしれないのはわかっていますよね。
決してデバッグモニタを上書きしないようにしましょう。
Milo の環境変数が保存されているフラッシュメモリブロックを選択します。
Milo の "bootopt" コマンドと同じです ( "bootopt" コマンドを参照)。
あまり意味のないコマンドです。 フラッシュメモリマネージメントユーティリティから Milo などに戻る唯一の方法は、 システムを再起動することです。