IBM i オブジェクト
オブジェクト は、記憶域に存在する (スペースを占める) 名前付きの単位であり、オペレーティング・システムはこの単位に対して操作を実行します。 IBM i オブジェクトは、すべてのデータ処理情報が格納され、IBM i オペレーティング・システムによって処理される手段を提供します。
オブジェクトは、コマンドによる操作の対象になる基本的な単位です。 例えば、プログラムやファイルはオブジェクトです。 ユーザーは、オブジェクトを介して、システムのデータの検索、 保守、および処理を行うことができます。 ユーザーは、使用するオブジェクトおよび機能 (コマンド) さえ知っていればよく、 データの記憶域のアドレスを知っている必要はありません。
CL コマンドは、 IBM i オブジェクトに対して操作を実行します。 いくつかのタイプの IBM i オブジェクトが作成され、制御言語で使用されます。 IBM i オブジェクトには、共通して以下の特性があります。
- オブジェクトには、そのオブジェクトを記述する一連の 属性が備わっていますが、これらの属性はオブジェクトの作成時に ユーザーが定義します。
- システムが特定の機能の 実行に使用しなければならないオブジェクトは、 その機能を実行する CL コマンドで指定する必要があります。
- オブジェクトには、そのオブジェクトを記述する一連の属性があり、 それらの属性にそれぞれ特定の値が 割り当てられます。
- 通常、オブジェクトは、 それぞれ他のオブジェクトから独立して存在します。 ただし、オブジェクトによっては、他のオブジェクトに先立って作成しなければ ならないものもあります。例えば、基礎となる物理ファイルが存在していないと、 論理ファイルを作成することはできません。
- オブジェクトは、そのオブジェクトを使用する操作の実行前に 作成しておく必要があります。 各作成コマンドで作成するオブジェクト・タイプについては、 それぞれの作成 (CRT) コマンドの項で詳しく説明します。
- 制御言語によって使用されるすべての IBM i オブジェクトには、名前があります。 CL コマンドで指定するオブジェクト名によって、コマンドの機能を実行するために オペレーティング・システムがどのオブジェクトを使用するかが指示されます。
- オブジェクトは、単純名、 修飾名、または総称名のいずれかを持ちます。
システムでは、各種のオブジェクトのタイプをサポートしています。 タイプの中には、データ処理システムの多くに共通しているオブジェクトを指すものがあります。 以下のタイプはその例です。
- ファイル
- プログラム
- コマンド
- ライブラリー
- 待ち行列
- モジュール
- サービス・プログラム
また次のように、必ずしも他のシステムでは使用されないタイプもあります。
- ユーザー・プロファイル
- ジョブ記述
- サブシステム記述
- 装置記述
オブジェクトのタイプが異なれば、その操作特性 (属性) も異なります。 このような特性の相違が各オブジェクト・タイプをそれぞれ固有のものにしています。 例えば、ファイルはデータが入っているオブジェクトであり、 命令が入っているプログラムとは操作特性の点で異なっています。
オブジェクトにはそれぞれ名前があります。 オブジェクトを識別するのに使用されるのは、 オブジェクト名とオブジェクト・タイプです。 オブジェクト名は、オブジェクトを作成するユーザーによって割り当てられます。 オブジェクト・タイプは、そのオブジェクトの作成に使用されるコマンドによって決まります。 例えば、あるプログラムを作成し、 それに OEUPDT (受注項目更新 の略) という名前を付けた場合、 そのプログラムは常にその名前で参照されることになります。 システムは、 オブジェクト名 (OEUPDT) およびオブジェクト・タイプ (プログラム) によって該当のオブジェクトを見つけ出し、 そのオブジェクトに対する操作を行います。 複数のオブジェクトに同じ名前を付けることもできますが、その場合、 それらのオブジェクトはそれぞれオブジェクト・タイプが異なっているか、 またはそれぞれ異なるライブラリーに保管されている必要があります。
システムは、オブジェクト・タイプに応じて特定の機能の誤った使用を防止することにより、 保全性を維持します。 例えば、CALL コマンドはプログラム・オブジェクトを実行します。 CALL コマンドにファイル名を指定した場合、 そのファイルと同じ名前のプログラムが存在しなければ、その CALL コマンドは実行されません。