コンパイラーにはいくつかの標準データ・セットが必要です。 データ・セットの数は指定したオプショナル機能により異なります。 これらのデータ・セットは、標準 DD 名を持つ DD ステートメントに 定義する必要があります。標準 DD 名は、他のデータ・セット特性 と共に、表 12 に示されています。DD ステートメント SYSIN、SYSUT1、および SYSPRINT は常に必要です。
標準データ・セットはどれも直接アクセス装置に保管できますが、DD ステートメント に SPACE パラメーターを組み込む必要があります。 このパラメーターは、必要な補助記憶域の量を指定するために データ・セットを定義します。IBM 提供のカタログ式プロシージャーに割り振られる補助記憶域の量は、 大部分のアプリケーションにとって十分と思われます。
|
標準 DDNAME |
データ・セットの内容 |
レコード のフォー マット (RECFM) |
レコード のサイズ (LRECL) |
|
|---|---|---|---|---|
|
SYSDEBUG |
TEST(SEPARATE) 出力 |
SYSDA |
F,FB |
>=80 および <=1024 |
|
SYSDEFSD |
XINFO(DEF) 出力 |
SYSDA |
F,FB |
128 |
|
SYSIN |
コンパイラーへの入力 |
SYSSQ |
F,FB,U VB,V |
<101(100) <105(104) |
|
SYSLIB |
INCLUDE ファイル用ソース・ステートメント |
SYSDA |
F,FB,U V,VB |
<101 <105 |
|
SYSLIN |
オブジェクト・モジュール |
SYSSQ |
FB |
80 |
|
SYSPRINT |
リスト (メッセージを含む) |
SYSSQ |
VBA |
137 |
|
SYSPUNCH |
プリプロセッサー出力、コンパイラー出力 |
SYSSQ SYSCP |
FB |
80 または MARGINS() 値 |
|
SYSUT1 |
一時作業ファイル |
SYSDA |
F |
4051 |
|
SYSXMI |
XINFO(XMI) 出力 |
SYSDA |
VB |
16383 |
|
SYSXMLSD |
XINFO(XML) 出力 |
SYSDA |
VB |
16383 |
|
SYSADATA |
XINFO(MSG) 出力 |
SYSDA |
U |
1024 |
|
注:
指定変更できるコンパイル時 SYSPRINT の値は BLKSIZE だけです。 |
||||
コンパイラーへの入力は、SYSIN という名前の DD ステートメントによって定義 されたデータ・セットでなければなりません。 このデータ・セットは CONSECUTIVE 編成でなければなりません。 入力は 1 つ以上の外部 PL/I プロシージャーでなければなりません。 単一のジョブまたはジョブ・ステップで複数の外部プロシージャーを コンパイルしたい場合は、各プロシージャーの前に %PROCESS ステートメントを 置きます (最初のプロシージャーの前には不要な場合があります)。
PL/I ソース・プログラムの入力メディアとして、80 バイト・レコードが 一般に使用されます。 入力データ・セットは、直接アクセス装置または他の一部の順次メディアに 置くことができます。 入力データ・セットには、固定長レコード (ブロック化または非ブロック 化のもの)、可変長レコード (コード化または非コード化のもの)、 または不定長レコードのいずれでも入れることができます。 最大レコード・サイズは 100 バイトです。
入力ファイルの最大行数は 999,999 です。
コンパイラーへの入力のためにデータ・セットを連結する場合は、 連結されたデータ・セットは同じような特性 (例えば、ブロック・サイズや レコード・フォーマット) を持っていなければなりません。
コンパイラーからの 1 つ以上のオブジェクト・モジュール形式の 出力は、コンパイル時オプション OBJECT を指定した 場合には、データ・セット SYSLIN に保管することができます。 このデータ・セットは DD ステートメントで定義されます。
オブジェクト・モジュールは、常に、ブロック化または非ブロック化の 80 バイトの 固定長レコードの形式になります。BLKSIZE が SYSLIN に指定され、BLKSIZE の値が 80 以外であれば、LRECL を 80 として指定しなければなりません。
SYSLIN DD は、一時データ・セットまたは永続データ・セットのどちらかを指定する必要があります。データ・セットのタイプにかかわらず、連結したデータ・セットを指定することはできません。
SYSLIN DD は、PDS や PDSE ではなく、順次データ・セットを指定しなければなりません。
MDECK コンパイル時オプションを指定した場合、SYSPUNCH という名前の DD ステートメントで定義されるデータ・セットは、 プリプロセッサーからの出力の保管にも使用されます。
コンパイラーは、一時作業ファイルとして使用するためのデータ・セットを 必要とします。 このデータ・セットは、SYSUT1 という名前の DD ステートメントで 定義され、予備ファイル と呼ばれます。 これは直接アクセス装置上にある必要があり、 マルチボリューム・データ・セットとして割り振ってはなりません。
予備ファイルは、主記憶域の論理拡張部分として使用され、 テキストと辞書情報を入れるためにコンパイラーとプリプロセッサーに よって使用されます。SYSUT1 の LRECL および BLKSIZE は、予備ファイル・ページに 使用できるストレージの量に基づいて、コンパイラーが選択します。
本書で記述される DD ステートメントおよび SYSUT1 用の カタログ式プロシージャーの中の DD ステートメントは、1024 バイト・ブロック 単位のスペース割り振りを要求します。 これは直接アクセス・ストレージ・スペースの適切な 2 次割り振りが獲得されるように するためです。