IBMBPIR*
IBMBPIRは、プログラムの初期化と終了を処理するPL/Iライブラリーのサブルーチンです。IBMBPIRはGETMAINマクロを発行し、初期作業域用の記憶域を取得したあと、ユーザー プログラムをロードして実行します。ユーザー プログラムが実行されたあとは、FREEMAINマクロが発行され、初期作業域が解放されて呼び出し元に戻ります。
ヒント
待ち時間属性レポートで、IBMBPIR1がSVC 018(BLDL/FIND)によって呼び出されたことが報告される場合、このモジュールが呼び出されるたびに、PL/I環境が作成されている可能性があります。
PL/Iユーザー プログラムがCOBOLまたはFORTRANのメイン ユーザー プログラムのいずれかから呼び出されると、IBMBPIR1はSVC 018を通じて呼び出されます。PL/I環境は、PL/Iのサブプログラムが実行を終了するたびにフラッシュされます。
他の第3世代言語の環境と同様にPL/I環境を常駐させ、メイン ユーザー プログラムでダミーのPL/Iモジュールを呼び出すことによってこれを排除できます。
COBOLに対するダミーのPL/Iソースコードは、以下のとおりです。
INITPLI: PROC OPTIONS(COBOL); END INITPLI;
このモジュールは、COBOLのメインライン モジュールから呼び出され、コンパイルされてCOBOLのユーザー プログラムにリンクされる必要があります。
参考資料
『OS PL/I Programming Guide, Version 2 Release 3(SC26-4307)』
『OS PL/I Resident Library: Program Logic(LY33-6008)』