日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 章:OpenVMS オペレーティング・システムの概要
第 2 章:DCL を使用したシステムとの会話
第 3 章:ファイル情報の格納
第 4 章:ディレクトリ・ファイルの編成
第 5 章:拡張ファイル指定
第 6 章:ディスクとテープ・ドライブの使用方法
第 7 章:Mail を使用して他のユーザと通信する
第 8 章:EVE エディタによるテキスト・ファイルの編集
第 9 章:ファイルのソートとマージ
第 10 章:資源へのアクセスの制御
第 11 章:デバイスとファイルの論理名定義
第 12 章:シンボル,コマンド,式の定義
第 13 章:コマンド・プロシージャの概要
第 14 章:DCL での拡張プログラミング
第 15 章:レキシカル関数を使用しての情報の取得と処理
第 16 章:プロセスとバッチ・ジョブ
付録 A :文字セット
付録 B :コマンド・プロシージャの例
用語集
索引
PDF
OpenVMS ホーム
OpenVMS

OpenVMS
ユーザーズ・マニュアル


目次 索引



論理名テーブルには,次の属性があります。

  • 有効範囲 (共有可能かプロセス固有かどうか)

  • アクセス・モード

  • 名前

  • 親論理名テーブル

  • アクセス制御 (共用可能論理名テーブルのみ)

  • 制限 (論理名により専有されるプールの量を制限する)

システムの初期化中に,共用可能論理名テーブルがいくつか作成されます。新しいプロセスが作成されると,システムはそのプロセスに対して共用可能でプロセス固有のテーブルを他にいくつか作成します。 表 11-1 にこれらのテーブルのすべてを示します。

論理名テーブルのアクセス・モードは,その作成時に指定できます。これが指定されないとモードは,テーブル作成が要求されたアクセス・モードに省略時設定されますが,通常これはスーパバイザ・モードまたはユーザ・モードです。論理名テーブルには,それ自身のアクセス・モードとより低い特権アクセス・モードの論理名が含まれることがあります。論理名テーブルは,同じまたはそれ次の特権アクセス・モードの別のテーブルに対する親テーブルである場合もあります。

論理名テーブルは,その名前で識別されますが,名前自体が論理名です。論理名として各名前テーブル名が論理名テーブル内に含まれている必要があります。

11.8.1 論理名テーブルのディレクトリ

ディレクトリという 2 つの特殊な論理名テーブルが,論理名テーブル名のコンテナとして存在します。

  • プロセス・ディレクトリ LNM$PROCESS_DIRECTORY
    プロセス・ディレクトリには,そのプロセスに対するすべてのプロセス固有テーブルの名前と自身のテーブル名が含まれます。各プロセスには,それ自身のプロセス固有ディレクトリがあります。

  • システム・ディレクトリ LNM$SYSTEM_DIRECTORY
    システム・ディレクトリには,すべての共用可能テーブルの名前と自身のテーブル名が含まれます。 LNM$SYSTEM_DIRECTORY は,システムごとに1つしかありません。

これらのディレクトリには,テーブル名に反復的に変換する名前が含まれます。すべての論理名テーブル名と,テーブルに変換する論理名は,これらのディレクトリに保持されます。

論理名テーブルの親テーブルは,必ずしもディレクトリ・テーブルである必要はありません。つまり,この階層構造は論理名テーブル名の位置から明白です。

11.8.2 ディレクトリ・テーブルの構造の表示

論理名テーブルに対する論理名ディレクトリ・テーブルの関係を表示するには,次の例に示すように,SHOW LOGICAL/STRUCTURE コマンドを入力します。

$ SHOW LOGICAL/STRUCTURE
(LNM$PROCESS_DIRECTORY) 
    (LNM$PROCESS_TABLE) 
(LNM$SYSTEM_DIRECTORY) 
    (LNM$SYSTEM_TABLE)    
    (LMF$LICENSE_TABLE) 
    (LNM$CLUSTER_TABLE) 
        (LNM$SYSCLUSTER_TABLE) 
    (LNM$GROUP_000123) 
    (LNM$JOB_824E98E0)
            . 
            . 
            . 
 

この例では,各論理名テーブル・ディレクトリ内に常駐する論理名テーブル名を示します。またこれは,LNM$CLUSTER_TABLE とLNM$SYSCLUSTER_TABLE との関係も示します。

11.9 省略時設定の論理名テーブル

システム・ディレクトリとプロセス・ディレクトリ・テーブルを含む,エグゼクティブによって作成された省略時設定のテーブルを 表 11-1 に示します。

表 11-1 省略時設定の論理名テーブル
テーブル名 完全なテーブル名 論理名 説明
プロセス論理名テーブル
プロセス・ディレクトリ LNM$PROCESS_DIRECTORY ( 他の論理名なし ) プロセス固有論理名テーブル名とテーブル名に反復的に変換する名前の定義を含む。
プロセス・テーブル LNM$PROCESS_TABLE LNM$PROCESS SYS$DISK および SYS$INPUT などのプロセス固有論理名を含む。
共用論理名テーブル
システム・ディレクトリ LNM$SYSTEM_DIRECTORY ( 他の論理名なし ) 共用可能論理名テーブルとテーブル名に反復的に変換する名前の定義を含む。
システム・テーブル LNM$SYSTEM_TABLE LNM$SYSTEM システム内のすべてのプロセスに共用される名前を含む。 SYS$LIBRARY および SYS$SYSTEM など。
クラスタ単位システム・テーブル LNM$SYSCLUSTER_TABLE LNM$SYSCLUSTER OpenVMS Cluster システムのすべてのプロセスが共用する名前を含む。
クラスタ単位親テーブル LNM$CLUSTER_TABLE LNM$CLUSTER LNM$SYSCLUSTER_TABLE を含む,すべてのクラスタ単位の論理名テーブルの親テーブル。
グループ・テーブル LNM$GROUP_ gggggg 1 LNM$GROUP UIC グループのすべてのプロセスが共用する名前を含む。
ジョブ・テーブル LNM$JOB_ xxxxxxxx 2 LNM$JOB ジョブ・ツリーのすべてのプロセスが共用する名前を含む。SYS$LOGIN および SYS$SCRATCH など。

1文字列 gggggg は,プロセスの UIC グループ番号を含む 6 桁の 8 進数を表す。
2文字列 xxxxxxxx は,ジョブ情報ブロックのアドレスである 8 桁の 16 進数を表す。



ログイン時にプロセス論理名ディレクトリ・テーブル LNM$PROCESS_DIRECTORY で作成されるプロセス固有論理名を 表 11-2 に示します。

表 11-2 プロセス論理名ディレクトリの省略時設定の論理名
名前 説明
LNM$GROUP LNM$GROUP_ gggggg として定義されるグループ論理名。ここで gggggg はグループ番号を表す。 LNM$GROUP_ gggggg 1 は UIC グループが使用する論理名テーブル。テーブル LNM$GROUP_ gggggg は,システム・ディレクトリ・テーブル内でカタログ化される。したがって, LNM$GROUP はグループの論理名テーブルの名前に反復的に変換する論理名である。
LNM$JOB LNM$JOB_ xxxxxxxx として定義されるジョブ論理名。ここで xxxxxxxx 2 はそれぞれのジョブ・ツリーに固有の数値を表す。LNM$JOB_ xxxxxxxx は,ジョブで使用する論理名テーブル。テーブル LNM$JOB_ xxxxxxxx は,システム・ディレクトリ・テーブル内でカタログ化される。したがって, LNM$JOB はジョブ論理名テーブルの名前に反復的に変換する論理名である。
LNM$PROCESS プロセス論理名テーブルの名前である LNM$PROCESS_TABLE に反復的に変換するプロセス論理名。
LNM$PROCESS_DIRECTORY プロセス・ディレクトリ論理名テーブルの名前。

1文字列 gggggg は,プロセスの UIC グループ番号を含む 6 桁の 8 進数を表す。
2文字列 xxxxxxxx は,ジョブ情報ブロックのアドレスである 8 桁の 16 進数を表す。



システム上のすべてのプロセスには, LNM$PROCESS_TABLE という名前のプロセス論理名テーブルがあります。プロセス・テーブルにある名前を使用できるのは,そのプロセスとそれに従属するサブプロセスだけです。ログイン時に,システムはプロセスに対する論理名を作成し,それをそのプロセス・テーブルに配置します。

名前 LNM$PROCESS を通じて間接的に LNM$PROCESS_TABLE を参照することができます。この間接参照により,LNM$PROCESS を複数の等価名として再定義して,次の例で示すようにその中に各自のテーブルを 1 つ以上含めることができるようになります。

$CREATE/NAME_TABLE APPLICATION_NAMES 
$DEFINE/TAB=LNM$PROCESS_DIRECTORY LNM$PROCESS APPLICATION_NAMES, 
LNM$PROCESS_TABLE 

省略時設定により,プロセス・テーブルには 表 11-3 に示す論理名が含まれます。これらの論理名 SYS$INPUT,SYS$OUTPUT,SYS$ERROR,SYS$COMMAND は,プロセスパーマネント・ファイル ( プロセスの処理中にオープンしたままのファイル ) を参照します。プロセスパーマネント・ファイルについての詳細は, 第 11.13 節 を参照してください。

表 11-3 プロセス論理名テーブルの省略時設定の論理名
名前 説明
SYS$COMMAND DCLが入力を読み込む初期ファイル ( 通常は使用するターミナル )。DCL が入力を読み込むファイルは,入力ストリームと呼ぶ。コマンド・インタプリタは SYS$COMMAND を使用して元の入力ストリームを "記憶" しておく。
SYS$DISK ログイン時に設定された,または SET DEFAULT コマンドによって変更された省略時設定の装置。
SYS$ERROR DCL が,警告,エラー,および重大なエラーによって生成されたエラー・メッセージを書き込む省略時設定の装置またはファイル。
SYS$INPUT DCLが入力を読み込む省略時設定のファイル。
SYS$NET DECnet for OpenVMS タスク間通信のターゲット・プロセスを起動するソース・プロセス。ターゲット・プロセスによってオープンされると, SYS$NET はプロセスがその相手とデータを交換できる論理リンクを表す。 SYS$NET が定義されるのは,タスク間通信の期間中に限られる。
SYS$OUTPUT DCLが出力を書き込む省略時設定のファイル ( 通常は使用するターミナル )。DCL が出力を書き込むファイルは,出力ストリームと呼ぶ。
TT ターミナルに対する省略時設定の装置名。



11.9.3 システム論理名ディレクトリ

システム・ディレクトリ・テーブル LNM$SYSTEM_DIRECTORY に含まれる省略時設定のシステム論理名を 表 11-4 に示します。

表 11-4 システム論理名ディレクトリの省略時設定の論理名
名前 説明
LNM$CLUSTER LNM$CLUSTER_TABLE に反復的に変換するクラスタ単位の親テーブルの論理名。
LNM$DCL_LOGICAL LNM$FILE_DEV として定義されるDCL論理名。 LNM$DCL_LOGICALは,SHOW LOGICAL コマンド,SHOW TRANSLATION コマンド, F$TRNLNM レキシカル関数によって検索され表示される論理名テーブルのリストに反復的に変換する。省略時設定により,これらのコマンドは,プロセス,ジョブ,グループ,システム,およびクラスタ単位のシステム論理名テーブルをこの順に検索して表示する。
LNM$DIRECTORIES LNM$PROCESS_DIRECTORY および LNM$SYSTEM_DIRECTORY として定義されるディレクトリ論理名。
LNM$FILE_DEV ファイル指定を処理する場合にシステムが検索する論理名テーブルのリストとして定義される検索リストの論理名。 LNM$PROCESS,LNM$JOB,LNM$GROUP,LNM$SYSTEM として定義され,システムは,プロセス,ジョブ,グループ,システム,およびクラスタ単位のシステム論理名テーブルをこの順に検索する。
LNM$GROUP グループ・テーブル LNM$GROUP_ gggggg 1 に定義されるグループ論理名。
LNM$JOB LNM$JOB_ xxxxxxxx 2 として定義されるジョブ論理名。
LNM$PERMANENT_MAILBOX LNM$SYSTEM として定義されるパーマネント・メールボックス論理名。パーマネント・メールボックスに関連付けられた論理名は,論理名 LNM$PERMANENT_MAILBOX が反復して変換する論理名テーブルに入力される。
LNM$SYSCLUSTER LNM$SYSCLUSTER_TABLE に反復的に変換するクラスタ単位のシステム論理名テーブルの論理名。
LNM$SYSTEM LNM$SYSTEM_TABLE,LNM$SYSCLUSTER に反復して変換するシステム論理名テーブル名。
LNM$TEMPORARY_MAILBOX LNM$JOB として定義される一時メールボックス論理名。一時メールボックスに関連付けられた論理名は,論理名 LNM$TEMPORARY_MAILBOX が反復して変換する論理名テーブルに入力される。

1文字列 gggggg は,プロセスの UIC グループ番号を含む6桁の8進数を表す。
2文字列 xxxxxxxx は,ジョブ情報ブロックのアドレスである8桁の16進数を表す。



ここでは,次の省略時設定の共用論理名テーブルについて説明します。

  • クラスタ単位のシステム・テーブル

  • クラスタ単位の親テーブル

  • グループ・テーブル

  • ジョブ・テーブル

  • システム・テーブル

クラスタ単位のシステム・テーブル LNM$SYSCLUSTER_TABLE

LNM$SYSCLUSTER_TABLE は,クラスタ単位のシステム論理名テーブルの名前です。このテーブルには,クラスタのすべてのユーザが使用できる論理名が含まれています。

名前 LNM$SYSCLUSTER を通じて間接的に LNM$SYSCLUSTER_TABLEを参照することができます。間接参照により, LNM$SYSCLUSTER を複数の等価名として再定義して,その中に各自のテーブルを含めることができます。

クラスタ単位の親テーブル LNM$CLUSTER_TABLE

LNM$CLUSTER_TABLE は,LNM$SYSCLUSTER_TABLE を含む,すべてのクラスタ単位の論理名テーブルの親テーブルです。論理名 LNM$CLUSTER を使用してこれを参照します。

グループ・テーブル LNM$GROUP_gggggg

それぞれのグループ・テーブルの名前は LNM$GROUP_gggggg です ( gggggg はユーザ ID コード [UIC] グループ番号を表します)。このテーブルにある名前は,同じUICグループ番号を持つすべてのユーザが使用できます。システム上のすべてのグループには,対応するグループ論理名テーブルがあります。

名前 LNM$GROUP を通じて間接的に LNM$GROUP_gggggg を参照することができます。間接参照により, LNM$GROUP_gggggg を複数の等価名として再定義して,その中に各自のテーブルを含めることができます。またこれは,自分のUICグループ番号を記憶しておく必要を省き,最も新しく定義されたテーブルを必ず使用できるようにします。

ジョブ・テーブル LNM$JOB_xxxxxxxx

それぞれのジョブ・テーブルの名前は LNM$JOB_xxxxxxxx です (xxxxxxxx はジョブ・ツリーに対してシステムが定義したジョブ情報ブロック [JIB] アドレスを表します)。

ジョブ・テーブルには,ジョブ・ツリー,つまりプロセスとそのサブプロセスにあるすべてのプロセスで使用できる論理名が含まれます。システムには各ジョブ・ツリーに対して 1 つのジョブ・テーブルがあります。ジョブ・テーブルは共用可能なので,ジョブ・ツリー内のすべてのプロセスがアクセスできます。

名前 LNM$JOB を通じて間接的に LNM$JOB_xxxxxxxx を参照することができます。この間接参照により,LNM$JOB を複数の等価名として再定義して,その中に各自のテーブルを含めることができます。さらに,LNM$JOB を使用すると,JIBアドレスを見つける必要がなく,最も新しく定義されたテーブルを必ず使用できるようになります。

システムは,マウントされたディスク,マウントされたテープ,一時メールボックスに対して作成された論理名をジョブ論理名テーブルに配置します。さらに,システムは次の論理名を作成します。

  • SYS$LOGIN
    ログイン時の省略時設定の装置およびディレクトリ。

  • SYS$LOGIN_DEVICE
    ログイン時の省略時設定の装置。

  • SYS$REM_ID
    DECnet for OpenVMS ネットワーク接続を通じて開始されたジョブに対して,ジョブが発信されたリモート・ノード上のプロセスのID。 OpenVMS オペレーティング・システムでは,代理ログインが使用可能な場合,この ID がプロセスのユーザ名です。代理ログインが使用できない場合には,これがプロセスID (PID) 番号です
    ( 代理アカウントへの代理ログインにより,ユーザはアクセス制御文字列を指定せずにネットワーク上でファイルにアクセスできます。)

  • SYS$REM_NODE
    DECnet for OpenVMS ネットワーク接続を通じて開始されたジョブに対して,ジョブが発信されたリモート・ノードの名前。

  • SYS$SCRATCH
    一時ファイルが書き込まれる省略時設定の装置およびディレクトリ。

システム・テーブル LNM$SYSTEM_TABLE

システム・テーブルの名前は LNM$SYSTEM_TABLE です。システム・テーブルには,システム・レベルでシステムのすべてのユーザが使用できる論理名が含まれます。

システム・テーブルは通常,LNM$SYSTEM を通じて間接的に参照することができ,これは検索リスト LNM$SYSTEM_TABLE,LNM$SYSCLUSTER として定義されます。 LNM$SYSTEM を使用して,このノードにローカルなシステム名と,クラスタ上のすべてのノードに共通なシステム名を含めることができます。

システムの起動時にシステム・テーブルで自動的に定義される論理名を 表 11-5 に示します。

表 11-5 システム論理名テーブルの省略時設定の論理名
名前 説明 省略時アドレス
DBG$INPUT プロセス・レベルで SYS$INPUT に等しいと定義される, OpenVMS Debuggerの省略時入力ストリーム。 適用せず
DBG$OUTPUT プロセス・レベルで SYS$OUTPUT に等しいと定義される, OpenVMS Debuggerの省略時出力ストリーム。 適用せず
SYS$COMMON SYS$SYSDEVICE:[SYS n.SYSCOMMON.] の共通部分に対する装置およびディレクトリ名。 ここで n はプロセッサのルート・ディレクトリ番号。
SYS$ERRORLOG エラー・ログ・データ・ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSERR]
SYS$EXAMPLES システム例の装置およびディレクトリ名。 SYS$SYSROOT:[SYSHLP.EXAMPLES]
SYS$HELP システム・ヘルプ・ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSHLP]
SYS$INSTRUCTION システム命令データ・ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSCBI]
SYS$LIBRARY システム・ライブラリの装置およびディレクトリ名。 SYS$SYSROOT:[SYSLIB]
SYS$LOADABLE_IMAGES オペレーティング・システムのエグゼクティブでロード可能なイメージ,デバイス・ドライバ,その他エグゼクティブでロードされたコードの装置およびディレクトリ。 SYS$SYSROOT:[SYS$LDR]
SYS$MAINTENANCE システム保守ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSMAINT]
SYS$MANAGER システム・マネージャ・ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSMGR]
SYS$MESSAGE システム・メッセージ・ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSMSG]
SYS$NODE DECnet for OpenVMS がシステム上でアクティブであり,ネットワークに接続中の場合,ローカル・システムに対するネットワーク・ノード名。 適用せず
SYS$PROCDMP イメージ・ダンプが書き込まれるディレクトリ ( ユーザが設定 )。 省略時の設定なし
SYS$SHARE システム共用イメージのの装置およびディレクトリ名。 SYS$SYSROOT:[SYSLIB]
SYS$SPECIFIC SYS$SYSDEVICE のノード固有部分に対する装置およびディレクトリ名。 SYS$SYSDEVICE:[SYS n.],ここで nはプロセッサのルート・ディレクトリ番号。
SYS$STARTUP システム起動ファイルの装置およびディレクトリ名。 まず SYS$SYSROOT:[SYS$STARTUP] ,次に SYS$MANAGER を指す検索リスト。
SYS$SYSDEVICE システム・ディレクトリを含むシステム・ディスク。 通常は SYS$DISK
SYS$SYSROOT システム・ディレクトリに対する装置およびディレクトリ名。 まず SYS$SYSDEVICE:[SYS n.] ( n はプロセッサのルート・ディレクトリ番号),次に SYS$COMMON を指す検索リスト。
SYS$SYSTEM オペレーティング・システムのプログラムとプロシージャの装置およびディレクトリ。 SYS$SYSROOT:[SYSEXE]
SYS$TEST 環境設定テスト・パッケージ (UETP) ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSTEST]
SYS$UPDATE システム更新ファイルの装置およびディレクトリ名。 SYS$SYSROOT:[SYSUPD]


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.