OpenBoot 2.x コマンド・リファレンスマニュアル

NVRAMRC の使用方法

NVRAM の一部に nvramrc と呼ばれる部分があります。そのサイズはそれぞれの SPARC システムによって異なります。これは、起動時に実行されるユーザー定義のコマンドの格納用として予約されています。

一般的に、NVRAMRC は起動時システム変数を保存したり、デバイスドライバコードをパッチしたり、インストール先固有のデバイス構成とデバイスの別名を定義するためにデバイスドライバが使用します。また、バグパッチまたはユーザーインストールの拡張用にも使用できます。コマンドは、ユーザーがコンソールから入力するとおりの ASCII で格納されます。

NVRAMRC 関係のシステム変数には次の 2 つがあります。

NVRAMRC 内のコマンドは、use-nvramrc?true に設定している場合に、システム起動時に実行されます。次の例外を除く、ほとんどすべての Forth モニターコマンドがここで使用できます。

NVRAMRC 内容の編集

NVRAMRC のエディタである nvedit では、表 3-4 に示すコマンドを使用して、NVRAMRC の内容を作成、変更することができます。

表 3-4 NVRAMRC エディタコマンド

コマンド 

説明 

nvalias alias device-path

NVRAMRC に devalias alias device-path を格納します。この別名は、nvunalias または set-defaults コマンドが実行されるまで有効です。

nvedit

NVRAMRC エディタを起動します。前の nvedit セッションからのデータが一時バッファー内に残っている場合は、以前の内容の編集を再開します。残っていない場合は、NVRAMRC の内容を一時バッファーに読み込んで、それらの編集を開始します。

nvquit

一時バッファーの内容を、 NVRAMRC に書かないで捨てます。捨てる前に、確認を求めます。 

nvrecover

NVRAMRC の内容が set-defaults の実行結果として失われている場合、それらの内容を回復し、次に nvedit の場合と同様にこのエディタを起動します。NVRAMRC の内容が失われたときから nvrecover が実行されるまでの間に nvedit を実行した場合は、 nvrecover は失敗します。

nvrun

一時バッファーの内容を実行します。 

nvstore

一時バッファーの内容を NVRAMRC にコピーします。一時バッファーの内容は捨てます。 

nvunalias alias

対応する別名を NVRAMRC から削除します。 


注 -

一部の OpenBoot 2.x には nvalias および nvunalias コマンドがありません。


表 3-5 に NVRAM で使用できる編集コマンドを示します。

表 3-5 nvedit キー操作コマンド

キー操作 

説明 

Control-B

1 文字位置戻ります。 

Control-C

エディタを終了し、OpenBook コマンドインタプリタに戻ります。一時バッファーは保存されていますが、 NVRAMRC には戻されません。 (後で nvstore を使用して一時バッファーを NVRAMRC に書いて戻してください。)

Control-F

1 文字位置戻ります。 

Control-K

行の終わりでは、現在行に次の行をつなぎます (つまり、2 つの行を 1 つにします)。 

Control-L

すべての行を表示します。 

Control-N

NVRAMRC 編集バッファの次の行に進みます。 

Control-O

カーソル位置に new line を挿入し、現在行にとどまっています。 

Control-P

NVRAMRC 編集バッファーの前の行に戻ります。 

Delete

前の 1 文字を削除します。 

Return

カーソル位置に改行を挿入し、次の行に進みます。 

そのほかの標準的エディタ用コマンドについては、第 4 章「Forth ツールの使用方法」を参照してください。

NVRAMRC ファイルの起動

次の手順で、NVRAMRC コマンドファイルを起動してください。

  1. ok プロンプトで、nvedit と入力します。

    エディタのコマンドを使用して NVRAMRC の内容を編集します。

  2. Control-C を入力してエディタを終了し、再び ok プロンプトを表示させます。

  3. nvstore と入力して変更結果を保存します。

  4. setenv use-nvramrc? true と入力して、NVRAMRC を有効にします。

  5. reset と入力してシステムをリセットしてから NVRAM の内容を実行するか、 nvramrc eval と入力して nvramrc の内容を直接実行します。nvstore と入力して変更結果を保存しなかった場合は、nvrun と入力して一時編集バッファーの内容を実行してください。

次の例で、NVRAMRC 内に単純なコロン定義を作成する方法を示します。


ok nvedit 
0: : hello ( -- ) 
1: ." Hello, world. " cr 
2: ; 
3: ^-C 
ok nvstore 
ok setenv use-nvramrc? true 
ok reset 
....
ok hello 
Hello, world.
ok 

上記の例で、nvedit の行番号のプロンプト (0:、1:、2:、3:) に注意してください。これらのプロンプトはシステムによって異なることがあります。