「メインフレーム・コンピューター」で遊ぼうこんな時代に今さらメインフレーム・コンピューターに取り組むハメになったみんなが助けあうサイトです。RSSWordPress.orgコスパのいい社内システムの作り方メインフレームを扱っていると、軽い開発やメンテナンスにリソースを割けない、しかし、BPCも考えねば。解決策のひとつがクラウドにおくFileMakerです。私は1980年代後半からメインフレームのシステム系パッケージソフトを扱う仕事をしてきました。当時担当してた製品はトラブルが多く毎日のようにいろんなユーザーから「また落ちたぞ、ダンプ出てるから取りにきて!」って言う嬉しくないコールがバンバン入る。ダンプって言うのはメモリー上に展開されてるプログラムやデータをはき出した物。これが16進数と対応したキャラクター文字で編集された診断用のリストとして出力される。ダンプリストのサンプルアプリケーションの場合は自分のプログラムだけがわかればよかったり、使うメモリーも少なかったりするのでそんなに量がでない。サーバー系のソフトなんかだとメモリーは沢山使うは、さらに機能がシステム系だったりすると自分のプログラムやデータだけじゃ済まなくて、OS全体の共通エリアやOS自身のモジュール域なんかも必要だったりして、その出力量が半端じゃない。10万行、20万行とかはありがちで時には50万行なんてとてつもない量が出たりする。それを1ページ66行133桁の用紙に出すんですが、すごい紙の量になる。ストックフォームって言ってましたが印刷用紙が入った箱が高さ30から40cmぐらいあって、まぁ普通で1箱、多いと2箱、3箱分ぐらい出ちゃったりする。当時でもメインフレームのプリンター、特にレーザープリンター、それも高性能のはもの凄いスピードで印刷できるからストックフォーム1箱分程度の印刷ならさして時間は掛からない。これだけの量になるとスプールに残しておいてもかなりのスペースを占めるからお客さんとしてはさっさか掃き出したい。「こっち来る間に出しとくからね」となる。あまりに頻繁だとトラブルこと自体もさることながら「今度は本当に紙代請求するよ!」なんて言われたりもした。(実際取られたことはなかったな)さて前置きが長くなってしまった。最初にツライのはこの大量の紙が入った箱を会社に持って帰ること。2箱以上になると電車は無理なのでタクシー、でも若い身分でしょっちゅうタクシー使うとそれはそれでにらまれたりする。1箱程度だと2つに分けて紙袋に突っ込む。指がちぎれそうに痛い。真冬で雪が降った日に京葉線の何とかって駅まで延々とそれを持って歩いた時、本当につらくて本気で捨てようかと思った。会社に戻ってからは、そのダンプリストを調べてデバッグが始まるんですが何せ紙なんで作業効率悪いことこの上ない。どのモジュールで落ちたか?何のエラーで落ちたか?ぐらいはすぐわかる。何でそんなことが起きたのかって言う原因を調べなければならないがこれがまた大変。紙だから検索なんて気の利いたことができない。アドレスで場所を探す場合はまだいいけど、ある特定の文字列を見つけるとか、バイナリー値を探したいなんて時は、リストの量が多いとたまらない。その頃はそうするしかなかったからね。調べるスピードが追っつかないからそのうち調査待ちのダンプの箱が何十個って積み上がってたりしたもんです。本当にやばくて緊急なものは徹夜してでもやったけど、そうでないとバカらしくてやってらんないってことになり、割とさっさか帰っちゃったりしてました。「いや?徹夜して調べたんですど、むずかしくてまだわかんないんですよ。すいませんもうしばらく時間下さい」なんてしれっとして中間報告。自分が作ったプログラムならいざ知らず、外国のそれも会ったこともない奴が作ったプログラムのバグで何で俺がこんな思いしなきゃなんないのって思いの方が強いからふてくされちゃうんですね、私は。それでもさすがに量がたまるとそれはそれでまずくなってくるので徹夜したり、休みをつぶしたりはしょっちゅうでした。ごめんなさいまだ前置き長いですね。昔からメインフレームやってた人なら「何でTSOとか使わないの?」と思ったかも知れません。小さい会社だったんでそんなに端末なかったんですよ。事務所に数台って感じ。新参者だったし先輩連中が端末の前にドカって座ってるとそうそう簡単に使わせてもらえません。周りも忙しいからなかなか帰ってくれないんで端末空かないし...やがて部署に数台ってぐらいに増設されてからは使いましたよ。ダンプを紙じゃなくテープに入れてもらって、マシン室のある別の事務所に行ってテープからディスクに落として、自分の事務所に戻ってから机の上で調べられました。これはこれで不便なんですよ。言うのは端末って言ってもMS-DOSベース(実際はIBM製なんでPC-DOS、PS/55とか言ったかなぁ...)のPCでの3270エミュレーターですが画面サイズが80桁*24行なんですよ。ダンプって121桁あるんで画面からはみ出るんです。画面をいちいち左右にスクロールしないとだめなんです。これが実にうっとおしくてやってられません。132桁*27行表示できる3270モデル5のハードウェア端末(型番は忘れた)が事務所に2台だか3台だかあったんで空いてればそれを使いましたが昼間だと結構取り合いになるんです。これが使えると検索はできるわ、リストの横幅一杯に表示できるわで紙を見るより作業効率はぐんと良くなりました。調査待ちで積み上がるのが紙の代わりにテープになっただけだったかも知れない。この頃が1990年過ぎぐらいですよ、確か。それからしばらくして自分で買いました。DOS/Vノートパソコン。Dynabookだったかな。メインフレームには繋げられなかったんで単なる高級文房具としてこちょこちょやってたけど、仕事では何の役にたったかあまり覚えてない。あの頃はまだインターネットはやってなくて、代わりにハマッてたのがNifty-Serveって言うパソコン通信。ダイヤルアップって言ってモデムで電話回線と繋げて通信してたんですよ。実はこのブログを一緒にやってる相棒とはここの何かのフォーラムで知り合ったんですよ。彼は当時外資系メーカーにいたんですけどいろいろ助けてもらいました。ISVでシステムソフトをやってた身としてはメーカーのエンジニアの友人は強い味方でしたねぇ。ちなみに僕は○○○BASなんてソフトを扱ってたとこにいましたが、僕はまったく違う製品をやってました。日本では超マイナーな製品でしたけど...すいませんねぇ思い出話に浸ってしまい。ここからがタイトルに関しての本題。その後に出たんですよ。ウ・イ・ン・ド・ウ・ズってものが。自分で買いましたよ仕事用に。PS/VISIONってやつ。3270エミュレーターとホストに繋げるためのCOAXボードって言うインタフェース・カードはあまりにも高いんで会社で買ってもらった。個人持込みPCだって使い放題。そもそも個人用PCなんてお偉いさんから割り当てられるんでまだぺーぺーだった僕なんかいつになることやらって頃でしたから。TCP/IPは普及してなくて、仮にWindows側で使えるようにしたとしてもホスト側のTCP/IPなんてまだまだ使えなかったらあくまでもSNA接続です。それでもWindowsになって自分のPCで3270エミュレーターを動かせたのは大きかったな。ソフトウェアでのエミュレーションだからお気に入りの132桁表示も出来たし、エミュレーターのファイル転送でホスト側のデータセットを自分のPCに持って来られたから紙のリストで苦労したダンプやら製品のアセンブルリストやら何やら仕事で使うホスト上にあったデータをみ?んな自分の道具の中に入れました。Windowsのテキストエディターはいいよねぇ。ISPFエディターだのISPFブラウザーなんて使ってられないですよ、PCの世界に浸ると。このあたりでついに紙の資料から解放されたって感じです。ダンプやトレースリストもそうだけどアセンブルリストやソースコードがPCの中に入ってくると出来るんですよ、け・ん・さ・く。それも複数のファイルにまたがって。このメッセージってどのモジュールが出すんだ?このフィールドに値を設定してるのはどのモジュールだ?ってことなんかを調べるのにそりゃあ便利になりましたよ。フリーウェアだのシェアウェアだのもこの頃はもう盛んでしたからいろいろ落としまくりました。インターネットではなく入手元はニフティサーブ(今の@niftyの前身)から役立ちそうなものはないかって。この頃会社の汎用機はIBM,FACOM,HITACってひと揃いあって、VM,MVS/ESA,VSE/ESA,AVM,MSP/EX,XSP,VMS,VOS3/ES1,VOS1が自由に使いまくれていい時代でした。メインフレーム全盛期の終盤あたりでしょうかね。それから数年で出ましたねWindows95。TCP/IPが標準になってインターネットが普及し始めました。メインフレームの仕事関係でTCP/IPの恩恵を受けるようになったのは会社の汎用機にLANコントローラーが導入された後です。IBM機が最初だったと思う。自分の仕事では関係なかったから。仕事でTCP/IPやったきっかけは1997年に仕事でアイルランドに行った時。アイルランドのある会社で作ったMVS(OS/390のバージョン2が出始めた頃かな)版ソフトを富士通にMSPに移してみないかって話で。そこの社長は当時いた会社で僕がやってた製品の開発元にいたエンジニアで仕事上ではあるものの元々付き合いがあった人。そんな縁で話がきたんですね。どんなソフトかをひとことで言うとメインフレームで動かすPOSIX環境。応用オプションで用意したのがWebサーバー。一応やりましたよMSPへの移植。このソフトはわりと壮大な構想で、MVSの中にPOSIXのAPIを実装して、C言語で書かれたプログラムはこの製品のライブラリーを使ってコンパイルすればUNIXベースのソフトを汎用機で動かせるってシロモノ。バッチ・プログラムでもいいし、専用のオンライン処理用サーバー内で動かしてもいい。C言語だけでなく、アセンブラー用のマクロやCOBOL用のAPIルーチンも用意してた。最初から全部のAPIを用意したわけでなく、Webサーバーで使うのに必要なものに絞ってたと思う。エンハンスを重ねて実装API数を増やすって計画でした。APIを使用してました。MVSやMSPのコンソール・イメージをWebブラウザーで表示するなんて言うCGIルーチンを作った記憶がある。テスト用で実用品ではありませんけど。技術的には完動品として完成したんですけど、まぁその後いろいろあって日の目を見るには至りませんでした。私は日本では売れるとは思いませんでした。IBMさんはWebSphereを出してたし、その頃はみんなが思ってたんですよ「近いうちにメインフレームはなくなる」って。WebサーバーなんてUNIXでApacheでしょ。メインフレームはなくなるんだから代わりになるものはUNIXしかないじゃんってね。なんでそんな開発できたのって思うかも知れませんね。融通が効く会社だったんですよ。ベースのMVS版は出来ていてただMSP用に直すだけだし、外注するわけでなく全部自分達でやるし。この製品はいろいろ学べたものも多かったです。ちなみにTCP/IPを扱うソフトをやったのはこれが最初でした。