Compaq OpenVMS Alpha
V7.3-1 リリース・ノート【翻訳版】


前へ 次へ 目次 索引


6.10 AlphaStation 255: PCI 構成の制限事項

V7.1

OpenVMS Alpha オペレーティング・システムでは,AlphaStation 255 シリーズ・システム上で PCI スロット 0 に構成された PCI オプション・カードは,サポートされません。

PCI スロット0 は,AlphaStation 255 シリーズ・システムで最下位の物理 PCI オプション・スロットです。このスロットの割り込みシグナルは,内蔵イーサネット・ポートと共有されます。OpenVMS Alpha オペレーティング・システムでは現在,PCI デバイスが割り込みラインを共有できないので,スロット 0 に取り付けられた PCI デバイスが正しく動作しないか,内蔵イーサネット・ポートでエラーが発生します。この制限があるために,AlphaStation 255 シリーズ・システムはスロット 1 とスロット 2 に構成された最大 2 枚の PCI オプション・カードだけをサポートします。

6.11 RZ25M および RZ26N ディスク・ドライブに関する注意(Alpha)

V7.1

DWZZA とロング・ディファレンシャル SCSI バスを含む構成を使用して,Compaq がサポートする SCSI ディスク・ドライブをテストしたところ,2 台のドライブ(RZ25M と RZ26N)でバス・フェーズに関する問題が検出されました。そのため,DWZZA を接続するディファレンシャル・バスの長さが 20 メートル以上の構成では,これらのドライブを使用しないでください。

この勧告は RZ25M および RZ26N ドライブにのみ適用されます。OpenVMS SPD に,サポートされるドライブとしてリストされている他のすべてのディスク・ドライブは,SCSI-2 仕様の上限のバスの長さまで使用できます。

6.12 AlphaServer 2100 システムでの SCSI コントローラの制限事項

V6.2

1 GB を超えるメモリを搭載した AlphaServer 2100 システムでは,Adaptec 1740/1742 SCSI コントローラ(PB2HA-SA)はサポートされません。このコントローラがそのようなシステムに接続されている場合は,次のメッセージがオペレータのコンソールに表示されます。


%PKJDRVR-E- PKX0, Port is going OFFLINE. 

6.13 OpenVMS Alpha SCSI ファームウェアのサポート

ここでは,SCSI ファームウェアのサポートについて説明します。

6.13.1 RZ26N および RZ28M ディスクに対する推奨ファームウェア・サポート

V6.2-1H3

RZ26N および RZ28M ディスクを使用する場合には,ファームウェアのリビジョン・レベルは 0568 以上をお勧めします。

これらのディスクで最新のファームウェア・リビジョン・レベルが使用されていない場合には,問題が発生する可能性があります。

6.13.2 RZ26L および RZ28 ディスクをマルチホストで使用するために必要なファームウェア

V6.2

OpenVMS Cluster のマルチホスト SCSI バスに RZ26L または RZ28 ディスクを取り付ける場合,ディスクに必要なファームウェア・リビジョンは,最低でも 442 です。

ここでは,一部の RZ26L および RZ28 ドライブでファームウェアを更新するために使用する手順について説明します。この手順を使用できるのは,ドライブがホスト・システムの SCSI アダプタに直接接続されている場合だけです。インテリジェント・コントローラ(HSZ40 や KZPSC など)を介して接続されているドライブは,この手順では更新できません。ファームウェアの別の更新手順があるかどうかについては,インテリジェント・コントローラのドキュメントを参照してください。

重要

ファームウェア・リビジョン・レベル 442 に安全にアップグレードできるのは,特定の RZ26L および RZ28 ファームウェア・リビジョンだけです。使用中のディスクをファームウェア・リビジョン・レベル 442 にアップグレードできるかどうか判断するには, 第 6.13.3 項 を参照してください。ディスクがファームウェア・リビジョン・レベル 442 をサポートできる場合は,第 6.13.4 項 で説明している RZTOOLS ユーティリティを使用して,ディスクのファームウェアを更新します。

6.13.3 ファームウェア・リビジョン・レベル 442 の必要条件

ファームウェア・リビジョン・レベル 442 に安全にアップグレードできるのは,表 6-2 に示したディスク・ドライブとファームウェア・リビジョン・レベルの組み合わせだけです。他の組み合わせで更新手順を実行すると,ディスクを永久に破損する可能性があります。

表 6-2 リビジョン・レベル 442 ファームウェアの互換性
ディスク・ドライブ ファームウェア・リビジョン ディスク・ファイル名
RZ26L 440C RZ26L_442D_DEC.FUP
RZ28 441C または D41C
435 または 436
RZ28_442D_DEC2104.FUP
RZ28P4_442C_DEC.FUP

6.13.4 ファームウェア・リビジョン・レベル 442 のインストール手順

使用しているディスクでリビジョン・レベル 442 ファームウェアが必要かどうか,安全にアップグレードできるかどうかを判断した後,次の手順を実行してファームウェアを更新します(アップグレードするディスクのファイル名については,表 6-2 を参照してください)。


$ MCR SYS$ETC:RZTOOLS_ALPHA DKB500 /LOAD=SYS$ETC:filename.FUP 
  Read in 262144 bytes. 
  Current FW version - X440C 
  Upgrading to       - DEC0 
  Loading code  ...... 
  New code has been sent to the drive. 

6.14 アドオン SCSI アダプタ

V7.3-1

OpenVMS Alpha Version 6.2 またはそれ以降では,さまざまなアドオンSCSI アダプタがサポートされます。Compaq のAlphaGeneration プラットフォームは,通常,1 つ以上の内蔵 SCSI アダプタをサポートし,さらに追加としてアドオン SCSI アダプタを増設することもできます。使用するデバイス命名規則が Alpha コンソールと OpenVMS とでは異なるため,プラットフォームによっては,OpenVMS デバイス名がコンソールに表示される名前と一致しないことがあります。

たとえば,EV6 システム以前のプラットフォーム(GS AlphaServer 140 を除く)では,SCSI デバイスのコンソール名が DKA100 と表示されることがあります。ところが,2 台のアドオン SCSI アダプタを増設すると,"A" は "C" になり,OpenVMS が実行されている場合には,DKA100 が DKC100 と表示されます。

EV6 以上のプラットフォームでは,デバイス名の相違は発生しません。

コンソールと OpenVMS でデバイス名が異なる場合でも,アドオン SCSI アダプタが増設されたり,取り外されたりしない限り,コンソールに表示されるデバイス名と OpenVMS でのデバイス名の間の対応は一貫しています。

6.15 SCSIテープ・デバイスの Mode Page 01hに関するより厳密な条件

V7.3

OpenVMS Alpha Version 7.3 またはそれ以降では,SCSI テープ・デバイスの SCSI Mode Page 01h(Read Write Error Recovery Page)の条件がより厳密になっています。これらの条件は,回復可能なディファード・エラー処理の回復アクションを定義することにより,SCSI テープへの書き込み操作中のデータ損失を防ぐように考慮されています。Compaqがサポートするドライブの場合,これらの変更がドライブの動作に影響することはありません。ただし,ドライブによっては,次の2通りの場合のように,これらの新しい条件が SCSI テープの動作に影響することがあります。

  1. OpenVMS Alpha Version 7.3 またはそれ以降では,SCSI テープ・ドライブのファームウェアで Read Write Error Recovery Page(SCSI Mode Page 01h)がサポートされないことが検出されるとエラー・ログ・エントリが作成されます。このようなエントリは,テープのマウント時にエラー・ログに作成されます。エントリは,モード・センスのコマンド Opcode(無効要求のセンス・キー)の SCSI ステータスのチェック状態情報によって区分されます。

    このエントリは通知専用なのでドライブのエラー状態は表されません。ユーザは無視してかまいません。サービス担当者だけが使用します。この状況は,TLZ09 やサード・パーティのテープ・デバイスなどの多数の SCSI テープ・デバイスで発生します。

  2. SCSI テープ・ドライブで,回復可能なディファード・エラー処理が発生した場合,OpenVMS Alpha Version 7.3 では,データ損失の可能性を認識し,呼び出し側に致命的なドライブ・エラーを通知します。Compaq がサポートしている SCSI テープ・デバイスでは,デフォルトの動作により,回復可能なディファード・エラー処理が抑制されるため,この動作はほとんど発生しません。


第 7 章
インターロックされたメモリ命令の使用

インターロックされたメモリ命令を使用するための厳密な規則は,『Alpha Architecture Reference Manual, Third Edition(AARM)』に説明されています。Alpha 21264(EV6)プロセッサと将来のすべてのAlpha プロセッサは, これらの規則で決められている必要条件に関して,以前のプロセッサよりさらに厳しくなっています。この結果,以前は規則に準拠していなくても正常に動作していたコードが,21264 以上のプロセッサを搭載したシステムでは正しく実行できないことがあります。このような規則に準拠していないコード・シーケンスが発生することは,非常にまれであると考えられています。 21264 プロセッサは,OpenVMS Alpha Version 7.1-2 より前のバージョンではサポートされません。

規則に従っていないコードを実行すると,インタープロセッサ・ロックが使用されるときに,プロセッサ間の同期が失われる可能性があり,インターロックされたシーケンスが常にエラーになる場合は,無限ループになることがあります。BLISS コンパイラの以前のバージョン,MACRO--32 コンパイラと MACRO--64 アセンブラの一部のバージョンでコンパイルされたプログラムや,一部の Compaq C および C++ プログラムのコード・シーケンスで, このような動作が発生することがあります。

影響を受けるコード・シーケンスでは,LDx_L/STx_C 命令を,アセンブリ言語ソースで直接,またはコンパイラで生成されたコードで使用しています。インターロックされた命令を使用する可能性の高いアプリケーションは複雑であるか,マルチスレッドされたアプリケーションであるか,または高度に最適化された固有に作成したロックおよび同期化手法を使用しているデバイス・ドライバです。

7.1 必要なコード・チェック

OpenVMS では,21264 プロセッサで実行されるコードにこのようなシーケンスがないかどうか確認してください。プロセス間ロック,マルチスレッド,プロセッサ間通信を行うコードでは,特に注意する必要があります。

Alpha 実行可能プログラムを分析して,規則に準拠していないコード・シーケンスがあるかどうか調べるために,SRM_CHECK ツールが開発されました。このツールは,エラーが発生する可能性のあるシーケンスを検出し,エラーを報告し,問題のあるシーケンスのマシン・コードを表示します。

7.2 コード分析ツール(SRM_CHECK)の使用

V7.3-1

SRM_CHECK ツールは,OpenVMS Alpha Version 7.3-1 Operating System CD-ROM の,次の場所にあります。


SYS$SYSTEM:SRM_CHECK.EXE 

SRM_CHECK ツールを実行するには,フォーリン・コマンドとして定義(または DCL$PATH 機能を使用)し,チェックするイメージの名前を指定して起動します。問題が検出されると,マシン・コードが表示され,イメージ情報の一部が印刷されます。次の例では,このツールを使用して myimage.exe というイメージを分析する方法を示しています。


$ define DCL$PATH []
$ srm_check myimage.exe

このツールでは,ワイルドカード検索がサポートされます。ワイルドカード検索を開始するには,次のコマンド行を使用します。


$ srm_check [*...]* -log

チェックされたイメージのリストを作成するには,-log 修飾子を指定します。-output 修飾子を使用すれば,出力をデータ・ファイルに書き込むことができます。たとえば,次のコマンドは出力を CHECK.DAT という名前のファイルに書き込みます。


$ srm_check 'file' -output check.dat

このイメージの MAP ファイルを調べれば,ツールからの出力を使用して,このシーケンスを生成したモジュールを検索することができます。表示されるアドレスは,MAP ファイルから見つけることができるアドレスに直接対応しています。

次の例に,SYSTEM_SYNCHRONIZATION.EXE というイメージに対して,分析ツールを使用した結果できる出力を示します。


 
 ** Potential Alpha Architecture Violation(s)found in file... 
 ** Found an unexpected ldq at 00003618      
 0000360C   AD970130     ldq_l          R12, 0x130(R23)
 00003610   4596000A     and            R12, R22, R10 
 00003614   F5400006     bne            R10, 00003630 
 00003618   A54B0000     ldq            R10,(R11)
 Image Name:    SYSTEM_SYNCHRONIZATION 
 Image Ident:   X-3 
 Link Time:      5-NOV-1998 22:55:58.10 
 Build Ident:   X6P7-SSB-0000 
 Header Size:   584 
 Image Section: 0, vbn: 3, va: 0x0, flags: RESIDENT EXE(0x880)
 

system_synchronization.exe の MAP ファイルには,次の情報が格納されます。


   EXEC$NONPAGED_CODE       00000000 0000B317 0000B318(     45848.)2 **  5 
   SMPROUT         00000000 000047BB 000047BC(     18364.)2 **  5 
   SMPINITIAL      000047C0 000061E7 00001A28(      6696.)2 **  5 

アドレス 360C は SMPROUT モジュールにあり,0 〜 47BB のアドレスが格納されています。モジュールから出力されたマシン・コードを確認することで,コードの位置を調べ,リスト行番号を使用して,対応するソース・コードを識別することができます。SMPROUT のベースが 0 以外の場合は,アドレス(この場合は 360C)からベースを減算して,リスト・ファイル内での相対アドレスを求める必要があります。

このツールは,可能性のある違反を出力の中で報告します。SRM_CHECK は通常,セクションの属性によってイメージ内のコード・セクションを識別することができますが,OpenVMS イメージの場合は,同じ属性を持つデータ・セクションが格納されることがあります。この結果,SRM_CHECK はデータをコードであるかのようにスキャンし,データ・ブロックを規則に準拠していないコード・シーケンスであると解釈することがあります。このような状況はあまり発生することがなく,MAP とリスト・ファイルを調べることで検出できます。

7.3 規則に準拠しないコードの特徴

SRM_CHECK ツールによって検出される規則に準拠しないコードは,次の 4 つに分類できます。これらの大部分は,新しいコンパイラで再コンパイルすることで修正できます。ソース・コードを変更しなければならないことがありますが,そのような場合はまれです。コンパイラのバージョンの詳細については,第 7.5 節 を参照してください。

SRM_CHECK ツールがイメージから違反を検出した場合は,適切なコンパイラを使用してイメージを再コンパイルしなければなりません(第 7.5 節 を参照)。再コンパイルした後,イメージを再び分析する必要があります。再コンパイルの後も違反が発生する場合は,ソース・コードを調べ,コード・スケジューリング違反が発生する原因を追求しなければなりません。その後,必要に応じてソース・コードを変更します。


前へ 次へ 目次 索引