前へ | 次へ | 目次 | 索引 |
従来,OpenVMS ではファイル名指定の英字をすべて大文字として格納してきました。さらに,ファイル名指定を使用するファイル・システム操作では,大文字と小文字は区別されていませんでした。
Extended File Specifications が導入された結果,システム・ツールやアプリケーションでは,ODS-5 ボリュームで英字の大文字だけでなく,小文字も含むファイル指定を格納および表示できるようになりました。
しかし,ファイル名指定の操作ではまだ大文字と小文字が区別されていませんでした。
OpenVMS バージョン 7.3-1 で,ツールおよびアプリケーションは,つづりが同じで大文字と小文字の設定だけが異なるファイル名指定を区別できるようになりました。
ファイル名の大文字と小文字の区別を無視するのか,保持するのかは,プロセスで設定できます。
大文字と小文字の区別は,使用するレイヤード製品やアプリケーションでこの機能がサポートされることがわかっている場合にだけ,有効に設定してください。 |
大文字と小文字を区別せずに照合するには,SET PROCESS/CASE_LOOKUP=BLIND コマンドを使用します。プロセスが CASE_LOOKUP=BLIND に設定されているときに,つづりが同じで大文字と小文字の設定だけが異なる複数のファイルを作成すると,DCL はこれらのファイルを元のファイルの新しいバージョンとして取り扱い,大文字と小文字の区別を元のファイルと同じ設定に変換します。
次の例では,DKA500 は ODS-5 ディスクです。
$ SET DEFAULT DKA500:[TEST] $ SET PROCESS /CASE=BLIND /PARSE_STYLE=EXTENDED $ CREATE COEfile.txt [Ctrl/Z] $ CREATE COEFILE.TXT [Ctrl/Z] $ CREATE CoEfile.TXT [Ctrl/Z] $ DIRECTORY Directory DKA500:[TEST] COEfile.txt;3 COEfile.txt;2 COEfile.txt;1 |
大文字と小文字が区別されるプロセス環境を作成するには,SET PROCESS/CASE=SENSITIVE コマンドを使用します。プロセスが CASE=SENSITIVE に設定されているときに,つづりが同じで大文字と小文字の区別だけが異なる複数のファイルを作成すると,DCL は 2 番目以降に作成されたファイルを新しいファイルとして取り扱い,大文字と小文字の区別を元のファイルと同じ設定になるように変換しません。次の例では,DKA500 は ODS-5 ディスクです。
$ SET DEFAULT DKA500:[TEST] $ SET PROCESS /CASE=SENSITIVE /PARSE_STYLE=EXTENDED $ CREATE COEfile.txt [Ctrl/Z] $ CREATE COEFILE.TXT [Ctrl/Z] $ CREATE CoEfIlE.txt [Ctrl/Z] $ DIRECTORY Directory DKA500:[TEST] CoEfIlE.txt;1 COEFILE.TXT;1 COEfile.txt;1 |
ODS-5 ボリュームでは,最初に入力したファイル名の大文字と小文字がそのまま保持されますが,ファイル検索では大文字と小文字は区別されません。したがって,DCL コマンド・プロシージャで .EQS. や F$LOCATE などの DCL 文字列関数を使用する場合などは,ファイルを比較するときに注意する必要があります。
大文字と小文字が区別されると想定しているアプリケーションを使用する場合や,環境で大文字と小文字の区別に依存している場合は,プロセスを /CASE=SENSITIVE に設定します。これらの設定を適切に行わないと,大文字と小文字を区別することによって問題が発生する可能性があることに注意してください。
デフォルトは SET PROCESS /CASE=BLIND /PARSE_STYLE=EXTENDED です。
4.10.4.1 RMS(Record Management System)での大文字と小文字の区別
RMS では,第 4.10.4 項 で説明したように,大文字と小文字の区別に関してプロセスのデフォルトが使用されます。OpenVMS Alpha バージョン 7.2 で長いファイル名をサポートするために,NAML ブロックが導入されました。プロセスのデフォルトの大文字と小文字の区別の設定を無効にするために,NAML ブロックに NAML$V_CASE_LOOKUP という新しいフィールドが追加されました。
NAML$V_CASE_LOOKUP の内部で,大文字と小文字の区別に関して次の値を設定できます。
フィールド名 | 説明 |
---|---|
NAML$C_CASE_LOOKUP_BLIND | RMS はファイルの作成,削除,検索時に大文字と小文字の区別を無視する。 |
NAML$C_CASE_LOOKUP_SENSITIVE | RMS はファイルの作成,削除,検索時に大文字と小文字の区別を判断基準として使用する。 |
NAML$V_CASE_LOOKUP が 0 であるか,NAML ブロックが使用されない場合は,現在のプロセスの設定が使用されます。
4.10.4.2 ACP/QIO での大文字と小文字の区別
ディレクトリ・エントリは,大文字と小文字を区別しない順序でリストされます。新しい FIB オプション,FIB$V_CASE_SENSITIVE が設定されている場合は,大文字と小文字を区別する操作が実行されます。このビットをクリアした状態で ACP/QIO 操作を行うと,大文字と小文字は区別されません。大文字と小文字の区別に関するプロセスのデフォルトは XQP に適用されません。
4.10.4.3 プロセスの大文字と小文字の区別を制御するシステム・サービス
大文字と小文字を区別する機能をサポートするために,システム・サービスが次のように変更されました。
$SET_PROCESS_PROPERTIES システム・サービスは,サービスに関連する単純値を設定します。OpenVMS Alpha バージョン 7.3-1 では,大文字と小文字を区別するために,次の 2 つの新しいプロパティ・コードがサポートされます。
プロパティ・コード | 説明 |
---|---|
PPROP$C_CASE_LOOKUP_TEMP | 使用する検索の種類(大文字と小文字を区別するかどうか)。この値は,イメージが存在する間だけ設定される。イメージがランダウンされると,この値はパーマネント・スタイルに戻される。有効な値は PPROP$K_CASE_BLIND と PPROP$K_CASE_SENSITIVE である。 |
PPROP$C_CASE_LOOKUP_PERM | 使用する検索の種類(大文字と小文字を区別するかどうか)。この値は,スタイルが再度設定されない限り,プロセスが存在する間設定される。イメージがランダウンされると,値はパーマネント・スタイルに戻される。有効な値は PPROP$K_CASE_BLIND と PPROP$K_CASE_SENSITIVE である。 |
$GETJPI システム・サービスに次の 2 つの新しいアイテム・コードが追加されました。
これらのアイテム・コードは,$SET_PROCESS_PROPERTIESW システム・サービスで設定された値を返します。返される値は PPROP$K_CASE_BLIND と PPROP$K_CASE_SENSITIVE のいずれかです。
$SET_PROCESS_PROPERTIESW システム・サービスの詳細については,『OpenVMS System Services Reference Manual』を参照してください。
4.10.4.4 DCL での大文字と小文字の区別
F$GETJPI レキシカル関数に,CASE_LOOKUP_IMAGE と CASE_LOOKUP_PERM という 2 つの新しいアイテム・コードが追加されました。これらのアイテム・コードは,プロセスの大文字と小文字の区別に関する情報を返します。
ファイル名の大文字と小文字の設定を変更するには,RENAME コマンドを使用します。RENAME が正しく動作するには,プロセスをあらかじめ CASE=SENSITIVE に設定しておく必要があります。
たとえば,JANCALENDAR.TXT というファイルの大文字と小文字の区別を変更するには,次のコマンドを入力します。
$ RENAME JANCALENDAR.TXT JanCalendar.txt |
この RENAME コマンドは,JANCALENDAR.TXT を JanCalendar.txt に変更します。
4.10.4.5 C RTL でのサポート
OpenVMS Alpha バージョン 7.3-1 では,Compaq C 実行時ライブラリの拡張ファイル指定のサポートが大幅に強化され,ODS-5 の 254 文字の 8 ビット文字のうち,これまでは 214 文字しかサポートされなかったのに対し,250 文字がサポートされるようになりました。さらに,ファイル・タイプを付けずにファイル名を報告することができるようになりました。
新しいサポートを有効にするには,1 つ以上の C RTL 論理名を定義しなければなりません。これらの論理名の設定は,実行時に C アプリケーションの動作に影響します。
DECC$EFS_CHARSET を有効に設定している場合,UNIX の名前に ODS-5 の拡張文字を含むことができます。複数のドットおよび 0〜255 の範囲のすべての ASCII 文字がサポートされますが,<NUL>,(/),("),(*),(?)はサポートされません。
DECC$FILENAME_UNIX_ONLY が有効に設定されていない場合は,コンテキストに応じて一部の文字が OpenVMS の文字として解釈されることがあります。これらの文字は(:),([),(<),(^),(;)です。
DECC$DISABLE_TO_VMS_LOGNAME_TRANSLATION が有効に設定されている場合,先頭に(/)がある場合だけ,変換ルーチンdecc$tovms()は UNIX 形式の名前の最初の要素を論理名として取り扱います。
DECC$FILENAME_UNIX_NO_VERSION が有効に設定されている場合,OpenVMS のジェネレーション番号は UNIX 形式のファイル名でサポートされません。
DECC$FILENAME_UNIX_NO_VERSION が無効に設定されている場合,UNIX 形式の名前でジェネレーション番号は先頭にドットを付けて報告されます。
DECC$FILENAME_UNIX_REPORT が有効に設定されている場合,呼び出し側が特に OpenVMS 形式を選択しない限り,すべてのファイル名は UNIX 形式で報告されます。このことは getpwnam(),getpwuid(),argv[0],getname(),fgetname()に適用されます。
DECC$FILENAME_UNIX_REPORT が無効に設定されていて,関数呼び出しで指定しなかった場合,ファイル名は OpenVMS 形式で報告されます。
DECC$READDIR_DROPDOTNOTYPE が有効に設定されていて,ファイルが UNIX 形式で報告される場合,readdir()は,ファイル名にドットが含まれる場合だけ,ファイル・タイプのないファイルの末尾にドットを付けて報告します。
DECC$READDIR_DROPDOTNOTYPE が無効に設定されている場合は,ファイル・タイプのないすべてのファイルの末尾にドットを付けて報告します。
DECC$RENAME_NO_INHERIT が有効に設定されている場合,ファイルの新しい名前は元のファイルから何も継承しません。新しい名前は完全に指定しなければなりません。
DECC$RENAME_NO_INHERIT が無効に設定されている場合,新しい名前は DCL RENAME コマンドの場合と同様に,デバイス,ディレクトリ,ファイル・タイプ,バージョンなど,ファイル名の不足しているコンポーネントを元のファイルから継承します。
必要な各論理名を定義するには,DEFINE name ENABLE コマンドを入力します。次の例を参照してください。
$ DEFINE DECC$EFS_CHARSET ENABLE |
この論理名を無効にするには,次のように入力します。
$ DEFINE DECC$EFS_CHARSET DISABLE |
サポートされない ODS-5 文字は次の 6 文字です。
042 0x2a(*) アスタリクス 063 0x3f(?) 疑問符 |
000 0x00(\0) NUL(文字列区切り文字) 047 0x2f(/) スラッシュ(ディレクトリ区切り文字) |
033 0x21(!) 感嘆符(ノード名で使用できる文字の後にある場合, ノード区切り文字として解釈されます) 034 0x22(") 二重引用符(OpenVMS 文字や,ファイル名の中で対 応する UNIX の要素がない要素を囲むための区切り 文字として C RTL で予約されており,現在は DECnet ファイル指定でも同様の目的で使用されています) |
4.11 新しい Compaq GCM(Graphical Configuration Manager)
システム管理者がパーティション分割された OpenVMS システムを管理する操作は,以前より簡単になりました。Compaq GCM(Graphical Configuration Manager)for OpenVMS は移植可能なクライアント/サーバ・アプリケーションであり,OpenVMS が稼動するパーティション分割された AlphaServer システムの構成をグラフィックで表示し,制御することができます。
GCM サーバは,1 台以上の AlphaServer システムの各 OpenVMS パーティションで動作します。
GCM クライアントは JAVA ベースのアプリケーションであり,JAVA 実行時環境(JDK V1.2.2 以上)および TCP/IP ネットワークをサポートするオペレーティング・システムであれば,どのシステムでも実行できます。OpenVMS システム管理者は GCM クライアントから 1 つ以上の GCM サーバに対してセキュア接続を確立して,次の機能を実行することができます。
詳細については,『OpenVMS Alpha パーティショニングおよび Galaxy ガイド』を参照してください。
4.12 Kerberos for OpenVMS
OpenVMS Alpha バージョン 7.3-1 以降,OpenVMS オペレーティング・システムの一部として Kerberos for OpenVMS が提供されるようになりました。以前のバージョンでは,Kerberos はレイヤード製品として出荷されていました。
Kerberos は,秘密鍵暗号を使用してクライアント / サーバ・アプリケーションに強力な認証機能を提供できるように設計されたネットワーク認証プロトコルです。
詳細については,『Kerberos Version 1.0 Security Client for OpenVMS Release Notes』を参照してください。
4.13 SET DEVICE と SHOW DEVICES の新しい LANCP 修飾子
表 4-1 は SET DEVICE コマンドの新しい修飾子を示しています。
修飾子 | 意味 |
---|---|
/AUTONEGOTIATE /NOAUTONEGOTIAGE |
設定を判断するために自動ネゴシエーションの使用を有効または無効にする。リンク自動ネゴシエーションは,自動ネゴシエーションをサポートしないスイッチやデバイスに接続している場合にだけ無効にする必要がある。/AUTONEGOTIAGE がデフォルトである。 |
/CONTENDER /NOCONTENDER |
リングを結合するときに,Token Ring が Monitor Contention プロセスに参加することを指定する。/NOCONTENDER 修飾子は,デバイスが現在のリング・サーバにならないことを指定する。 |
/DEVICE_SPECIFIC=FUNCTION | 一部のデバイス固有のパラメータを調整することができる。デバイス固有の機能を実行するコマンドについては,『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル(上巻)』を参照。 |
/JUMBO /NOJUMBO |
LAN デバイスでジャンボ・フレームの使用を有効にする。Gigabit Ethernet NIC だけがジャンボ・フレームをサポートする。/NOJUMBO がデフォルトである。 |
表 4-2 は SHOW DEVICES コマンドの新しい修飾子を示しています。
修飾子 | 意味 |
---|---|
/INTERNAL_COUNTERS | 内部カウンタを表示する。デフォルトでは,値が 0 のカウンタは表示されない。0 も含めてすべてのカウンタを表示するには,追加修飾子 /ZERO を使用する。デバッグ・カウンタを表示するには,追加修飾子 /DEBUG を使用する。 |
/TRACE | LAN ドライバ・トレース・データを表示する。 |
詳細については,『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル(上巻)』を参照してください。
前へ | 次へ | 目次 | 索引 |