Archive for 'システムプログラマーのための手引きいろいろ' Category
ISPFの画面データをトレースする
ISPFでの表示画面のデータ(3270データストリーム)は、ISPFのシステム・コマンドでトレース・データとして採取することができます。画面データのトレースなど、普通にISPFを使う分には不要な作業ですが、何らかのトラブ […]
複数のデバイスのUCBを求める
複数(すべて)のデバイスのUCBを求める すべてのデバイス、あるいは特定の装置群のデバイス(例えば、ディスク装置、テープ装置)のUCBを求めたい場合がある。デバイスにI/Oを行うのではなく、システム上のデバイスをリストア […]
特定のデバイスのUCBを求める
特定のデバイスのUCBを求める QSAMなどのアクセス法を使わずCCWを自分で組み立て実行させるような場合でも、アクセスするデバイスをJCLのDD文で定義してOPENマクロで予めオープンしてからアクセスするのであればUC […]
STACKマクロによるTSOコマンド出力のトラップ
STACKマクロによるTSOコマンド出力のトラップ z/OS(MVS、OS/390)のTSOでは、CLIST内で発行したTSOコマンドの出力メッセージは、システム変数「SYSOUTTRAP」と「SYSOUTLINE」によ […]
OPコマンドを待ち合わせるECBをECBLISTでWAITする時の注意
オペレーター・コマンド待ち合わせのECBをECBLISTに含める場合の注意 MODIFY/STOPコマンドによってオペレーター・コマンドを受け取るには、EXTRACTマクロでCOMエリアのアドレスを求め、そこからポイント […]
UPTとECTを動的に求める
ただの備忘録です。バッチやTSOなど、動く環境を固定しないで、呼び出された環境に応じて、メッセージを出力するサブルーチンを作るような場合に使えます。TSOでもTPUTとかで十分ですが、バッチTSO環境でSYSTSPRTに […]
LOAD発行時にABENDS106となるケース
MSPでの発生事例からの紹介ですが、MVS、VOS3でも同じことが言えます。 ISVにいた時、あるソフトウェア製品で経験したものです。STCタスクとして常駐運用させるソフトで、ユーザー出口ルーチンをサポートしています。ユ […]
ありがたいOSコマンド集(SLIPコマンド)
SLIPコマンド設定状況の表示 D SLIP D SLIP=id SLIPトラップの設定状況を一覧で表示する。idを指定すればそのSLIPトラップに関する詳細を表示する。 SLIPコマンド・サンプル集 SLIP SET, […]
ダンプの採取とフォーマット
ダンプとはプログラムおよびプログラムが使用しているメモリー上のデータを、診断のためにデータセットに書き出したものです。プログラムが動いているジョブのアドレス空間のメモリー内容が出力されます。MVSではプログラムが異常終了 […]
GTFトレースの採取とフォーマット
MVSにはGTFと呼ばれる汎用トレース機能があります。MVS自身の動作やアプリケーション・プログラムなどの動きをシステムのレベルでトレースする機能です。一般のプログラムのデバッグには向きませんが、アセンブラー言語で作成さ […]
区分データセットのディレクトリアクセス後のBPAM使用に関する注意
次のような手順でBSAMによりPDSのメンバーディレクトリを読み格納されているメンバー名を調べてから、その後でBPAMにより個々のメンバーの処理を行うようなプログラムを作る際の注意点。 DYNALLOC DIRを読むため […]
問題プログラムが原因でもシステムは落ちる
ちょっと驚かれるタイトルだったかも知れません。これは私の実体験から来ています。MVSのJCLではREGION=0M(No Limit)っていうのが指定できます。バーチャル2GB一杯まで使えるだけ使うってことです。Auth […]
アンカーポインターの持ち方
アンカーポインター(Anchor Pointer)をどこに持つかはシステム・プログラムにおいては重要なデザインとなる。有名なものにCVTUSERがあるが1つしかないため事実上使ってはならないフィールドである。タスク単位な […]
ラージDASD(3390-9型)の空きスペース管理
シリンダー数が4370cyl(x1112)以上になると総トラック数が65535(xFFFF)を超えてしまう。このため2バイトのトラックアドレスでは表現できなくなる。IBM 3390-9型、日立6588-9型がこれに当たる […]
アドレスモードによる分岐命令の動きの違い
アセンブラー講座のカテゴリーに載せるようなものですが、内容がシステムプログラマー向けなのでここにします。(これに限らずこのカテゴリーに載せている物はほとんどが昔自分用に作った備忘録なので内容はランダムです。)アセンブラー […]
古い技術を掘り起こす
大規模システムをもったお客さんや、メーカーですらそうだと思いますが、古いプログラム、とくにシステム系のもので、いまや内容がよくわからない、というものはありませんか? 以外に以下にあげるようなトリックのために作られたものだ […]
PSWキー0で実行中にサブプール0にGETMAINするには
PSWキー0で実行中のプログラムが、サブプール0(またはサブプール指定なし)でGETMAINしても、獲得される領域はSP=0ではなく、SP=252(StorageKey=0)の領域となる。そのため異なるキーで実行される複 […]