[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

1 はじめに: OpenVMSの概念と定義

OpenVMSは,会話型の仮想メモリ・オペレーティング・システム です。システムにログインしている間は,DIGITALコマンド言語(DCL) を通じてシステムと会話できます。DCLでは,ユーザが コマンドを入力すると,システムがそれを読み取り翻訳します。 キーボード上でコマンドを入力してReturnキーを押すと, システムはコマンドを実行します。入力の内容が解釈できない場合, システムは画面にエラー・メッセージを表示します。

本章では,OpenVMSオペレーティング・システムとその構成要素について, 基本的な概念を説明し,次の項目についての概要を説明します。

ローカル環境の違い

本書では,標準的なDCLコマンドについてのみ説明します。システム管理者はローカル環境をサポートするためにシステムを変更できます。 システム管理者は次のことができます。

本章で説明するコマンドについての詳細については,次のものを参照してください。

Extended File Specificationsについての補足情報は次のとおりです。

1.1 システムへのログイン

ログインとは,自分自身が登録されたユーザであることをシステムに認識させる手続きです。 ログインすると,コマンド入力可能な環境がシステムによって作成されます。 この環境をプロセスと呼びます。

システムへのログイン方法およびシステムからのログアウト方法については, 第2章を参照してください。

オペレーティング・システムと会話するには,ユーザ・アカウント にログインしなければなりません。アカウントとは,ログイン時にシステムがユーザを識別するための名前または番号のことです。 この名前または番号によって, システムは,ユーザのファイルがどこに格納されているのかを確認し, 他のファイルに対するアクセス権を判断します。

通常,アカウントの設定はシステム管理者(または,システムを使用する権限を持つ人間) が行います。システム管理者は,ユーザに必要に応じて特権を与えます。 アクセスできるファイル,イメージ,またはユーティリティが決まります。 これらはシステムの性能や他のユーザにも影響を与えるので重要です。

1.1.1 アクセス要求

アカウントにアクセスするには,ユーザ名とパスワードを入力しなければなりません。 システム管理者は通常,ユーザに対してユーザ名と初期パスワードを割り当てます。 ユーザ名は,システムがユーザを識別し, 他のユーザと区別するためのものです。多くの場合,ユーザ名には, ユーザの実際の姓か名前を使用します。パスワードは,システム保護のために設定します。 パスワードを秘密にすることにより,他人のユーザ名でシステム資源を使用できないようにします。

1.2 ネットワーク

複数のコンピュータ・システムを1つに連結すると,ネットワーク が形成されます。 DECnet for OpenVMSネットワーク中のオペレーティング・ システムは,相互に通信し,情報や資源を共用できます。 ネットワーク中の各システムはネットワーク・ノードと呼ばれ, 一意のノード名によって識別されます。

1.2.1 ネットワーク・ノード

ネットワーク・ノードにログインすると,他のネットワーク・ノードと通信できるようになります。 ログインしたノードをローカル・ ノード,ネットワーク上の他のノードをリモート・ノード と呼びます。リモート・ノード上のアカウントにアクセスすると, 自分のログインしたローカル・ノードからそのアカウントにログインでき, 自分のローカル・ノードと接続したまま,そのノード上でタスクを実行できます。

第2章は,リモート・ノードにログインする方法を示しています。 リモート・ノードで実行できる操作については,本書の該当する章を参照してください。

1.2.2 ネットワークを介してのプログラムの実行

DECnetソフトウェアがサポートする機能によって,ネットワークを介してあたかもローカル・ ノードで実行するかのようにリモート・ノード上で プログラムを実行できます。 DECnetソフトウェアはオペレーティング・ システム内部に統合されているため,リモート・ファイルにアクセスするプログラムを簡単に作成できます。 アプリケーション・プログラムの中でリモート・ ファイルへアクセスするには,リモート・ノードの名前と必要なアクセス制御情報をファイル指定の中に含めるだけで実現できます。

すべてのDECnet環境に共通する機能であるタスク間通信を利用すれば,使用するプログラミング言語にかかわらず, 同じまたは異なるオペレーティング・ システムで動作する2つのアプリケーション・プログラム同士で通信することができます。 ネットワーク・アプリケーションの例としては, 分散処理アプリケーション,トランザクション処理アプリケーション,そしてサーバへの接続を行うアプリケーションがあります。


注意
本書のリモート操作の例では, 代理アカウントを使用して,リモート・システムで操作できるようにしています。 代理アカウントは,ユーザがリモート・システムにアクセスするための方法の1 つです。リモート・システムにアクセスする他の方法については, 『OpenVMSシステム管理者マニュアル』を参照してください。

1.3 DIGITALコマンド言語(DCL)

DCL (DIGITALコマンド言語)は,オペレーティング・システムに特定の操作を実行させる命令からなります。DCL には,200を超えるコマンドと関数があり, これらを使用してオペレーティング・システムと通信し,様々なコンピューティングを達成できます。

1.3.1 モードの使用

DCLは,次の2つのモードで使用できます。

1.3.2 DCLコマンドの種類

DCLコマンドを入力すると,DCLインタプリタがそれを読み込んで解釈します。 コマンド・インタプリタのコマンドに対する応答は,入力したコマンドの種類によって異なります。DCL コマンドには,次の3つの種類があります。

1.3.3 DCLコマンド行

DCLには,他の言語と同様,独自の用語と使用規則があります。DCLの用語には, コマンド,パラメータ,および修飾子があり, これらの要素はDCLが解釈できるように指定形式が決まっています。 これをコマンド行構文と呼びます。

DCLコマンド行は,次のような形式を使用します。

[$]コマンド[[/修飾子[=値]]...] [[パラメータ[=値][/修飾子...]]...]


注意
大括弧[ ] で囲んだ項目はオプションです。 コマンドによっては必要ありません。

DCLコマンド行の構成要素については, 第3.2 節を参照してください。

レキシカル関数は,DCLインタプリタがコマンド文字列を解釈する前に評価して置換するコマンド言語構成です。 レキシカル関数については, 第17章で詳しく説明します。

1.4 ファイルとディレクトリ

ファイルには情報が格納されます。ファイルに格納される情報は, コンピュータが理解できる機械可読データのこともあれば, ユーザが入力して操作するテキストのこともあります。ファイルに格納されるテキストには, ドキュメント,プログラム,アドレス・リストなどがあります。 このようなファイルに格納されているデータを見るためには, ターミナルの画面に表示したり,用紙に印刷したりします。

ファイルを作成または編成して,情報を格納する方法については,第4章を参照してください。

ディレクトリは,ファイルの名前と位置情報が入った特殊なファイルです。 たとえば,システム管理者がユーザ・アカウントを作成すると( 第1.1節を参照),そのユーザ名と同じ名前を持つディレクトリが自動的に作成されます。 ユーザ名がJONES の場合,ディレクトリは[JONES]になります。

ディレクトリを使用して,ファイルを編成したり管理したりする方法については, 第5章を参照してください。

ディレクトリ・ファイルはディスクに格納されます。ディスクは, オペレーティング・システムが情報を格納するハードウェア ・デバイスの1つです。

1.4.1 ファイル指定

ファイルには,システムとユーザの両方から認識できるようなファイル名 ファイル・タイプが必要です。ファイルには バージョン番号もあります。したがって,1つのファイルに対し, 複数のバージョンが存在することが可能です。バージョン番号を付けずにファイルを指定した場合, 既存のバージョン番号の中で最も大きい番号が使用されます。 ファイルを編集する場合,システムは元のファイルをセーブして, 変更したファイルを出力します。省略時の設定では, 出力ファイルは元のファイルと同じ名前とタイプになり, バージョン番号が1だけ増分されます。

ファイル名,ファイル・タイプ,そしてバージョン番号を合わせて ファイル指定と呼びます。完全なファイル指定とは, 次のとおりです。

1.4.2 ディレクトリ構造

それぞれのディスクには,メイン・ディレクトリという,システム管理者かシステム自体しか設定できないディレクトリがあります。 このメイン・ ディレクトリはマスタ・ファイル・ディレクトリ(MFD)と呼ばれ, ユーザ・ファイル・ディレクトリ(UFD)のリストが登録されます。 UFDは,マスタ・ファイル・ディレクトリに格納されているファイルで, 最上位のディレクトリを指します。通常,最上位のディレクトリは, ユーザのログイン・ディレクトリか省略時のディレクトリ です。アカウントを特に変更しない限り(省略時の設定では) ,ユーザがログインしたときのディレクトリは最上位ディレクトリになります。

ほとんどの場合,UFDはシステムの各ユーザごとに存在します。UFDには, ユーザのディレクトリに登録されているファイルの名前とそのファイルへのポインタが格納されます。 ディレクトリ構造についての詳細は,第5章を参照してください。

1.4.3 サブディレクトリ

マスタ・ファイル・ディレクトリやユーザ・ファイル・ディレクトリなどの中にあるディレクトリ・ ファイルをサブディレクトリと呼びます。 サブディレクトリを使用すれば,ファイルを用途ごとに編成することができます。 たとえば,メモ用のサブディレクトリと状態レポート用のサブディレクトリは別々に作成しておくのがよいでしょう。

ディレクトリと同じように,サブディレクトリにも,その中に登録されているファイルの名前とポインタが格納されます。 サブディリクトリの中にも別のサブディレクトリを登録することができます。 このような構造( 最上位ディレクトリとサブディレクトリ)を階層ディレクトリ構造 と呼びます。

1.5 OpenVMSユーティリティ

この節では,本書で記述されているOpenVMSのユーティリティの概要を説明します。

1.5.1 MailとMIMEユーティリティ

OpenVMS Mailユーティリティ(MAIL)を使用すると,同じシステム上のユーザや,DECnet で接続されたシステム上のユーザとの間でメッセージを送受信できます。

MAILを補足するものとして,MIMEユーティリティがあります。MIMEユーティリティを使うと, 他のユーザから受け取った,またはユーザが送信する,MIME エンコードされたメッセージをエンコードしたり,デコードしたりできます。

MailとMIMEの使い方については,第6章を参照してください。

1.5.2 Phoneユーティリティ

OpenVMS Phoneユーティリティ(PHONE)を使用すると,同じシステム上のユーザや,DECnet で接続されたシステム上のユーザとの間で会話することができます。

Phoneの使い方については,第7章を参照してください。

1.5.3 テキスト・エディタ

テキスト・エディタを使用すると,テキスト・ファイルを作成したり変更したりできます。 テキスト・エディタでは,キーボードから入力したテキストをテキスト編集コマンドを使用して変更できます。 たとえば,レポート用のデータを入力した後で,段落を編成したり,情報をコピーしたり, 句を置換したり,テキストを編集したりすることが可能です。 また,テキスト・エディタは,プログラミング言語(OpenVMS やVAX BASIC用のDEC Cなど)やテキスト・フォーマッタ(VAX DOCUMENTやDIGITAL Standard Runoff など)用のソース・ファイルも作成したり変更したりできます。OpenVMS オペレーティング・システムは,複数のテキスト・ エディタをサポートしています。エディタの1つであるEVEの使い方については, 第8章を参照してください。別のエディタEDT の使い方については,第9章を参照してください。

1.5.4 DIGITAL Standard Runoff (DSR)

DIGITAL Standard Runoff (DSR)は,ソース・ファイルを書式化したテキストに変換し, 目次と索引を作成するテキスト・フォーマッタです。ソース・ ファイルは,テキスト・エディタで作成します。そして,ソース・ファイルのファイル・ タイプをRNOにします。ソース・ファイルには,テキスト,DSR 書式化コマンド,フラグ(テキストに挿入する特殊命令文字), そして制御文字が入力されます。

第10章に,DSRの使い方とDSRコマンド・ リストについて説明があります。

1.5.5 Sort/Mergeユーティリティ

OpenVMS Sort/Mergeユーティリティ(SORT/MERGE)は,SORTコマンドまたはMERGE コマンドを使用して起動できます。Sort/MergeユーティリティをDCL のSORTコマンドで起動した場合,1つまたは複数の入力ファイル のレコードをユーザが選択したフィールドに従ってソートし,1 つの出力ファイルに記録します。Sort/Mergeユーティリティを使用すれば, ファイル(1つまたは複数)のレコードの順序を変更し,アルファベット順や番号順に, 昇順または降順に並べかえることができます。

Sort/MergeユーティリティをDCLコマンドのMERGEで起動した場合,最大10 個のソート済みファイルを1つの出力ファイルにマージします。

Sort/Mergeユーティリティの使い方については,第11 章を参照してください。

1.6 デバイス

この節では,OpenVMS環境で使用できるデバイスの概要を説明します。

1.6.1 大容量記憶デバイス

ディスクや磁気テープなどの大容量記憶デバイス は,ファイルの内容を磁気メディアにセーブします。磁気メディアにセーブされたファイルは, いつでもアクセス,更新,変更,再使用することができます。

1.6.2 レコード単位取り扱いデバイス

ターミナル,プリンタ,メールボックス,カード・リーダなどのレコード単位取り扱いデバイス は,一度に1つの物理データ単位しか 読み込んだり書き込んだりすることができません。 データのオンライン記憶デバイスも持ちません。プリンタとカード・ リーダは,ユニット・レコード・デバイスとも呼ばれます。

1.6.3 ディスクおよび磁気テープ

頻繁にアクセスされるファイルはディスクや磁気テープに格納されます。 ユーザ・ファイル・ディレクトリ(UFD)と省略時のディレクトリ,およびあらゆるファイルとサブディレクトリはディスクに格納されます。 ディレクトリ情報が入ったファイル指定は, ファイルがディスクに登録されている場合しか使用できません。 磁気テープはディレクトリ構造を持っていません。 テープ上に格納されたファイルを取得するには,ファイル情報だけが入ったファイル指定を使用します。

省略時のデバイスにないファイルにアクセスする方法については,第5章を参照してください。 システム全体では使用できないテープやディスク・ デバイスをプライベート・ボリューム といいます。プライベート・ボリュームの使用方法については, 第12章を参照してください。

1.7 論理名

論理名とは,ある文字列または文字列のリストと同じ意味,機能,あるいは値を持つものとして定義された名前のことです。 論理名の定義とは,1 つの文字をある意味を持つ別の文字列(同値文字列 )と同じであると定義することです。同値文字列には通常,完全または部分ファイル指定, 別の論理名,あるいはその他の任意の文字列を使用できます。1 つまたは複数の同値文字列に対して論理名を定義しておけば, その論理名を使用してその同値を表すことができます。たとえば, 論理名を省略時のディスクやディレクトリに割り当てることが可能です。 論理名は,読みやすさとファイルの独立性の2つの働きをします。

第13章では,論理名テーブルについての情報と, 論理名の使用法について解説しています。

1.7.1 読みやすさ

頻繁に使用するファイル,ディレクトリ,またはデバイスに,短く分かりやすい論理名を定義することができます。 こうした論理名は,完全なファイル指定より覚えやすく, 入力も簡単です。使用頻度の高い名前は,ログイン・ コマンド・プロシージャの中で定義します。システム上の多くのユーザが頻繁に使用する名前は, システム管理者がサイト別のシステム・スタートアップ・ コマンド・プロシージャの中で定義します。

1.7.2 ファイルの独立性

論理名を使用すれば,プログラムやコマンド・プロシージャを物理的なファイル指定を意識せずに扱うことができます。 たとえば,あるコマンド・ プロシージャに論理名ACCOUNTSを使おうとする場合,そのコマンド・プロシージャが物理的に存在する場所を含めたファイル指定を ACCOUNTS に定義しておけば, 以後,物理的な格納場所などを意識せず,単にACCOUNTSを使用するだけでコマンド・ プロシージャを実行できます。

1.8 シンボル

シンボルは,数値,文字,論理値を表す名前です。DCLコマンド行でシンボルを使用すると,DCL は,そのシンボルに割り当てられた値を使用します。 シンボルをコマンド行として定義すると,シンボル名を入力するだけで, コマンドを実行できます。

パラメータ,修飾子,または値をいくつも指定しなければならないDCLコマンド行を入力するのは面倒で時間がかかります。DCL との会話を簡単に, そして時間を節約するためには,頻繁に使用するコマンド名やコマンド文字列全体の代わりに シンボルを設定します。

また,コマンド・プロシージャ内でシンボルを使用して,特定のデータ型を収集したり, 格納したり,操作することもできます。

DCLコマンドとコマンド・プロシージャの中でのシンボルの使い方については, 第14章を参照してください。

1.9 コマンド・プロシージャ

コマンド・プロシージャとは,一連のDCLコマンドが入っているファイルのことです。1 つか2つのDCLコマンドしか入っていない簡単なコマンド・ プロシージャもありますが,複雑なコマンド・プロシージャになると, 洗練されたコンピュータ・プログラムのような働きをします。コマンド・ プロシージャを実行すると,DCLインタプリタはファイルを読み込んで, その中に入っているコマンドを実行します。

1.9.1 システム・ログイン・コマンド・プロシージャ

システム管理者がシステム・ログイン・コマンド・プロシージャ を設定した場合には,ログイン時にそのシステム・ログイン・コマンド・ プロシージャが実行されます。ログイン・コマンド・プロシージャを使用すれば, システム管理者は,自分を含むシステム上のすべてのユーザがログインしたときに, 必ず特定のコマンドが実行されるように設定できます。

1.9.2 パーソナル・ログイン・コマンド・プロシージャ

システム・ログイン・コマンド・プロシージャを実行した後,システムは パーソナル・ログイン・コマンド・プロシージャを実行します( 存在する場合のみ)。パーソナル・ログイン・コマンド・プロシージャは, システム環境をカスタマイズするためのものです。パーソナル・ログイン・ コマンド・プロシージャに登録されているコマンドは,ログインするたびに実行されます。 つまり,ログイン時には,最大2つのログイン・ コマンド・プロシージャが自動的に実行されます(システム全体のログイン・ コマンド・プロシージャのほかにユーザ独自のログイン・コマンド・ プロシージャがある場合はその両方)。

ユーザのアカウントを設定した人が,ユーザの最上位ディレクトリにログイン・ コマンド・プロシージャを格納することもあります。ログイン・コマンド・ プロシージャが最上位のディレクトリに格納されていない場合には, 自分でコマンド・プロシージャを作成し,LOGIN.COMという名前を付け, 最上位ディレクトリに格納することもできます。システム管理者が他に指定しないかぎり, ユーザがログインしたとき,そのユーザが作成したLOGIN.COM ファイルが実行されます。第15章にはパーソナル・ ログイン・コマンド・プロシージャのサンプルがあります。

付録 Cには,完全なコマンド・プロシージャがいくつかあります。

1.10 レキシカル関数

レキシカル関数は,コマンド行またはコマンド・プロシージャに情報を戻します。 戻される情報は,プロセス,システム,ファイルとデバイス,論理名, 文字列,データ型に関するものです。レキシカル関数には,接頭辞F$ が付いています。

レキシカル関数は,通常,シンボルや式を使用するコンテキストの中で使用します。 コマンド・プロシージャの中では,論理名を変換したり,文字列処理を行ったり, プロシージャの現在の処理モードを判別したりするのに使用します。

第17章は,レキシカル関数を使って, コマンド・ プロシージャの内部での情報の取得や処理をしたりする方法について説明します。

1.11 プロセスとプログラム

プロセスには,独立プロセス(他のプロセスから独立しているプロセス) とサブプロセス(別のプロセスに従属して存在し, 資源を得ているプロセス)があります。メイン・プロセスは親プロセスとも呼ばれ, 独立プロセスの1つです。

プロセスを使用してシステム・タスクを実行する方法については,第18章を参照してください。

プログラムは,イメージまたは実行可能イメージ とも呼ばれ,命令やデータが機械が読み取り可能な形式で入っているファイルのことです。 プログラムによっては,DCLコマンドに関連付けられたり,DCL コマンドによって起動されるものもあります。たとえば,DCL のCOPYコマンドを入力した場合,システムはSYS$SYSTEM:COPY.EXE というプログラムを実行します。また,DCLのRUNコマンドの後にプログラム名を入力して起動するプログラムもあります。

1.11.1 利用者登録ファイル(UAF)

システムは,プロセス固有の特性を利用者登録ファイル(UAF) から取得します。UAFは,システムへアクセスを許可されたユーザをリストして, それぞれのユーザのプロセスの特性を定義します。 通常,UAFの管理はシステム管理者が行います。システムは一度に1つずつプログラム( イメージまたは実行可能イメージとも呼ぶ)を実行しますが, これらのプログラムはプロセスと呼ばれる環境内で実行されます。

1.11.2 イメージ・ファイルの作成

イメージ・ファイルには,オペレーティング・システムが提供するものと, ユーザが作成するものがあります。通常,イメージ・ファイルのファイル・ タイプは.EXEです。イメージ・ファイルはASCII文字では構成されていないので,DCL のコマンドTYPE,PRINT,またはEDITによって内容を見ることはできません。 一方,テキスト・ファイルは,英字,句読点, 数字などの特殊記号を表す標準的な方式であるASCII文字で構成されています。

プログラムの使い方については,第18章を参照してください。

1.12 システム・セキュリティ

システムにはそれぞれ,独自のセキュリティに関する要件があります。 このため,システムごとに,システム管理者とユーザに対する物理的および ソフトウェア的なセキュリティ要件を示すシステム・ セキュリティ方針を明らかにしておく必要があります。オペレーティング・ システムで使用可能なセキュリティ機能と,アカウントとシステムのセキュリティを保つために, システム管理者が実行可能なタスクについては, 『OpenVMS Guide to System Security』を参照してください。

第2章では,パスワード管理とアカウント・ セキュリティを説明します。第4章第5章はユーザが自分のファイルとディレクトリを不当なアクセスから保護する方法を説明します。

1.12.1 保護されたオブジェクト

システム・セキュリティを確実にするために,OpenVMSオペレーティング・ システムでは,システムへのアクセスと,共用可能情報を登録したオブジェクトへのアクセスの両方を制御します。 デバイスやボリューム,論理名テーブル, ファイル,キューなどのオブジェクトを保護されたオブジェクト と呼びます。保護されたオブジェクトはすべて,誰がそのオブジェクトに特定の方法でアクセスできるかを指定するアクセス条件一覧を定義しています。

第19章では,保護されたオブジェクトへのアクセスの制御や, リモート・システムのデータへのアクセスなど,セキュリティについて一般的に説明します。


[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]