「メインフレーム・コンピューター」で遊ぼうこんな時代に今さらメインフレーム・コンピューターに取り組むハメになったみんなが助けあうサイトです。RSSWordPress.orgコスパのいい社内システムの作り方メインフレームを扱っていると、軽い開発やメンテナンスにリソースを割けない、しかし、BPCも考えねば。解決策のひとつがクラウドにおくFileMakerです。コンソーシアム」設立のお知らせブロードリッジ、IBMと提携しハイブリッド・クラウド戦略を加速。内容が前後致しましたが、私がオウンコーディングに関して記事を書く理由について初めにご説明致しますMVSも同様と思いますが、OSの出口をユーザ自身が加工できるオウンコーディングが存在している理由として私は2つあげられると考えます1)OSの機能がユーザの期待不足の場合に応じるための加工(OSがユーザ側に歩み寄る)2)ユーザの意識や環境がOSを含むシステムを使うときの段差を解消させる(ユーザの環境をOSに合わせていく)コーディングする人間の立場がOS側として考えるか(1)、ユーザ側として考えるか(2)という風に思うと分かりやすいかもしれません概念図を以下に示します今回はOSのオウンコーディングに限定していますが、オウンコーディングを提供しているアプリケーションもありますこうして2つの理由を考えると、オウンコーディングは「ユーザとOS間の緩衝材」のようにも思えてくるのは私だけでしょうか?オウンコーディングは原則、アセンブラでコーディングします。オウンコーディングがCALLされる契機は用途によってさまざまですが、CALLされる毎にメモリにロードされCPUが仕事をする事になりますので、高級言語でコーディングをしていては、モジュールサイズが大きくなってしまうこと。OSの一部としてコーディングする訳ですからOSが提供する各種マクロも意識する必要が出てきますが、OSが提供する各種マクロ(WTOやTPUTマクロなど)の説明(マニュアル)はアセンブラでコーディングされる事を前提に書かれている為です*オウンコーディング間やユーザとオウンコーディングとの情報連絡OSが用意しているオウンコーディング用の情報連絡領域として”OCPA”,”CVT”,”BCT”があります。それぞれについて説明致しますOCPA・・・オウンコーディングパラメタエリアオウンコーディングがCALLされた時、引数として参照できる領域です領域の大きさは144バイトと少ない半面、ほぼすべてのオウンコーディングがアクセス可能です疎結合マルチプロセッサ、パラレルプロセッサの場合、ジョブの実行されるシステムと出力するシステムが異なる場合があります。OCPA自身はジョブが入力されたシステムで生成され、実行されたシステム、出力(SYSOUT)されたシステムへとジョブと一緒に転送されますCVT・・・・コンバートテーブル4バイトと非常に小さな領域ですが、オウンコーディング用作業領域として使うことを認可されています。ここの領域は実メモリの特定バイトに確保されるため、ユーザ側で自由に活用ができます。4バイトの中に情報を詰めるよりは、OS起動後に別タスクでGETMAINして共通領域の先頭アドレスを格納しておくと、他のオウンコーディングが当該領域を使うことができるというとても自由度の高い領域です但しOCPAとは異なり、システム固定です。他システムに転送する事はできません私が関わったオウンコーディングでは、ここの領域にセンタニュース(TSSのLOGON時やプリンタ出力のセパレータに出力)の情報を格納したり、CONSOLEコマンドなど特権命令を許可する対象ユーザを格納して運用中でもシステム管理者が自由にユーザの追加、削除が行えるようにしていましたオウンコーディングは運用中に変更する事はできません。変更後、再IPLをしないと適用されません。OSの一部として動作するため、頻繁に修正をしたくないユーザも多いようです。CVTを活用することで、メモリを通じてユーザがオウンコーディングに情報を伝えることが可能なので、積極的にCVTを使っていただきたいと思います。