いくつかの診断ルーチンがユーザーインタフェースで使用できます。これらのオンボードテストでは、ネットワークコントローラ、フロッピーディスクシステム、メモリー、装着されている SBus カード、SCSI デバイス、システムクロックなどのデバイスの機能を確認できます。
diagnostic-mode? から返される値は、次に示す設定を行います。
(デバイスとファイルがこれらのコマンドの引数として明示的に指定されなかった場合) boot、load コマンドが使用するデバイスとファイルを選択します。
電源投入時に自己診断テストで実行される診断の範囲と (実装によって異なる) 生成される診断メッセージ数を設定します。
OpenBoot は診断モードになり、次の条件のうち少なくとも 1 つが満たされた場合は、diagnostic-mode? コマンドから true が返されます。
(存在する場合) マシンの診断スイッチが「オン」である。
別のシステム依存のインジケータが拡張診断を要求している。
OpenBoot が診断モードのときは、diag-device の値は boot コマンドの「デフォルトの起動デバイス」として使用され、diag-file の値は「デフォルトの起動引数」として使用されます。
OpenBoot が診断モードでないときは、boot-device の値は boot コマンドの「デフォルトの起動デバイス」 として使用され、boot-file の値は「デフォルトの起動引数」として使用されます。
表 2-2に診断テスト用コマンドの一覧を示します。これらのテストは OpenBoot で実装していないことがあります。
表 2-2 診断テストコマンド
コマンド |
説明 |
---|---|
SCSI バスに接続されているデバイスを確認します。 |
|
指定したデバイスの自己診断テスト を実行します。例を示します。 |
|
watch-clock |
時計機能をテストします。 |
watch-net |
ネットワークの接続を監視します。 |
SCSI バスに接続されているデバイスの機能を確認するには、次のように入力します。
ok probe-scsi Target 1 Unit 0 Disk SEAGATE ST1480 SUN04246266 Copyright (C) 1991 Seagate All rights reserved Target 3 Unit 0 Disk SEAGATE ST1480 SUN04245826 Copyright (C) 1991 Seagate All rights reserved ok |
応答は SCSI バスに接続されているデバイスによって異なります。
取り付けられている 1 つのデバイスをテストするには、次のように入力します。
ok test device-specifier |
一般的に、メッセージが何も表示されなければテストは成功です。
多くのデバイスでは、このテストを実行するために、システムの diag-switch? パラメタを true にしておく必要があります。
フロッピーディスクドライブのテストは、フロッピーディスクドライブが正しく機能するかどうかを調べます。このテストを実行するには、フロッピーディスクドライブにフォーマット済みの高密度 (HD) ディスクをセットしておかなければなりません。
フロッピーディスクドライブをテストするには、次のように入力します。
ok test floppy Testing floppy disk system. A formatted disk should be in the drive. Test succeeded. ok |
一部の OpenBoot システムにはこのテストワードがありません。
ソフトウェアによる取り出しが可能なシステムのドライブからフロッピーディスクを取り出すには、次のように入力します。
ok eject-floppy ok |
メモリーをテストするには、次のように入力します。
ok test /memory Testing 16 megs of memory at addr 4000000 11 ok |
一部の OpenBoot システムにはこのテストワードはありません。
上の例で、最初の数値 (4000000) はテストの基底アドレスであり、その次の数値 (11) はテストされる M バイト数です。
ok watch-clock Watching the 'seconds' register of the real time clock chip. It should be ticking once a second. Type any key to stop. 1 ok |
数値が 1 秒ごとに 1 つずつ増えていきます。テストを停止するには任意のキーを押します。
一部の OpenBoot システムにはこのテストワードがありません。
ネットワークコントローラをテストするには、次のように入力します。
ok test net Internal Loopback test - (結果) External Loopback test - (結果) ok |
システムはテストの結果を示すメッセージを応答します。
特定のネットワークコントローラとシステムが接続しているネットワークのタイプとによって、各種レベルのテストが可能です。それらのテストによっては、ネットワークインタフェースをネットワークに接続することが必要な場合があります。
ok watch-net Internal Loopback test - succeeded External Loopback test - succeeded Looking for Ethernet packets. '.' is a good packet. 'X' is a bad packet. Type any key to stop ....................X.....X............... ok |
システムはネットワークトラフィックを監視し、エラーのないパケットを受け取るたびに . を、また、ネットワークハードウェアインタフェースによって検出できるエラーがあるパケットを受け取るたびに X をそれぞれ表示します。
一部の OpenBoot システムにはこのテストワードがありません。