DASDの初期化(イニシャライズ)

By 神居 - Posted: 2008/10/24 Last updated: 2009/10/29 - Leave a Comment

DASDボリュームを初期化(イニシャライズ)する。(MVSおよびMSP)

プログラム名はMSPではJTGGDSですが、ICKDSFの別名が付いているのでMVSと同じ名前でも利用できます。VOS3ではJSFDASDとなりICKDSFとの互換はありません。
ボリューム名を変えなければオンライン状態のままでイニシャライズできます。全データセットがパージされますが、カタログは残ります。ボリューム名を変える場合はボリュームをオフラインにした状態で実行しなければなりません。実行後にオンラインにすればマウントされます(MSPではマウントコマンドも必要)。中のデータセットを残したままボリューム名だけ変える場合はREFORMAT機能を使えます。
VTOCおよびINDEXパラメーターでVTOCとVTOC INDEXデータセットの位置と大きさを、(cyl番号,trk番号,trk数)で指定します。一般的にはボリュームの先頭に配置します。その場合CYL番号は0、TRK番号は1となります。TRK=0はシステムで使用するため利用できません。TRK数は作成されるデータセットの数によって変ります。VTOC 1トラックで50のデータセットが作成できる。正確には1トラックあたりに作成できるDSCBの個数で3390Diskでは50、3380Diskでは53となります。1つのデータセットは最低1つのDSCBを使用します。エクステントが増えたりすると追加のDSCBが作られますが、とりあえずは1データセットで1DSCBと考えてよいでしょう。作成されるデータセット50につき1トラック使うと考えて必要なTRK数を出し、システムが使うDSCBの分を考慮して10%増しぐらいにすればよいでしょう。VTOCは後で増やせない(確かそのはず)からあまりきちきちにする必要はありません。14trk、29trk、44trkあたりでしょうか。14と言うのはCYL=0のTRK=0はシステムでリザーブされてるので残りが14trkだから。以降はCYL単位にVTOCを増やそうとすれば29、44と15ずつ増えていきます。きれいなボリュームの空き容量をきっちりシリンダー単位にそろえたければこんな計算になります。

昔は「アクセスされるデータセットがたくさん格納されるボリュームのVTOCは、ボリュームの真ん中に配置させるとヘッドの動く量が小さくできるからパフォーマンスが良くなる」なんて教わったものですが、個人的には先頭にある方がすっきりします。ヘッドが飛び回る量を減らすにはアクセス頻度の高いデータセットは単一エクステントになるようにしてなるべくVTOCの近くに置くのがいいですが…
インデックスVTOCにするかどうかはセンターの運用方針に沿って下さい。今はほとんどがインデックスVTOCでしょう。SMSの機能をきっちり使うならインデックスVTOCが前提になってたりします。
SYSRESボリュームを作る場合は、IPLDDパラメーターでIPLプログラムのオブジェクトを指定します。SYS1.SAMPLIBにメンバーIEAIPL00で格納されています。MSPではKAAIPL00です。

向学心旺盛でもDASDのイニシャライズだけは注意してください。特にデータセットが入っているボリュームは。PCだってDISKのフォーマットってちょっとどきどきするでしょ?

Posted in ありがたいサンプルJCL • • Top Of Page