メインフレームのMVS3.8jをLinuxMint 22.3で動かしました

 1.概要

ubuntu 20.04で構築したMVS3.8j環境のバックアップを活用して、LinuxMint 22.3で動作を試験をしました。利用したのはIBMのメインフレームのオペレーティングシステムのMVS3.8jで、参考資料に沿ってSYSGENしたものです。これをhercluesでSystem/370のエミュレーションを実施して、i3-7100上で動作確認をしました。その内容を記載します。

2.詳細

参考資料を参照すると、2024年5月に更新されているようです。私は、Installation Stepsを実行して環境のGeneration(Build)をubuntu 20.04で実施して、バックアップを取得していました。この環境を復元して、i3-7100で動作確認をして、問題なく動作しました。

i3-7100はx86_64なので、System/370命令セットを理解できません。そこで、hercluesを利用してSystem/370をエミュレーションできる環境を準備して、i3-7100をSystem/370のハードウェアのように見せます。その環境でMVS3.8jを動かします。

MVS3.8jで提供される機能は、シングルCPUのサポート、物理メモリ24MB、ディスクはIBMの3350や3380などのモデルが用意されます。JES2、NET(VTAM)、TSOが起動し、3270端末エミュレータを利用してフルスクリーンエディタのRPFで操作できます。仮想メモリは24MBで物理メモリと同じ設定になっていました。

現在のPCを利用している方には、CPUが1個、メモリが24MB、IBM3350ディスクが300MBと知ると何としょぼい環境と感じると思います。しかし、この規模は1980年頃の大型コンピュータで計算室に鎮座した大規模なシステムと知ると驚かれます。

1984年にIBM PC/ATが登場し、MS-DOS(同時はIBM DOS)が1MBのメモリを利用するOSとして登場しました。その後、Intel CPUの発展、Memoryの大容量化、ディスク容量増大と小型化、SSDの利用、VGAによる高速グラフィック処理、TCP/IP利用、Ethernet利用、Internet利用と進み、桁違いの環境を個人で利用できるようになっています。

MVS3.8jの開発言語も現在の環境と異なり、COBOL,FORTRAN,RPGです。私はCOBOLのプログラムを記述して、コンパイル&リンク後、実際に走らせてみました。コンパイル&リンクは数秒で完了。私には驚異的な性能で実行されたと感じました。i3-7100は3.9GHzです。単純に1clockで1命令を実行できると想定すると、3900 MIPSとなります。hercluesでSystem/370のエミュレーションを考慮し、COBOLのコンパイルが数秒で実行できたので、私の感覚では数10MIPS程度の性能が出ている気はします。

LinuxMint 22.3環境なので、MVS3.8jのCPUやMemoryの追加設定をConfig修正できないかを調べました。mvs.cnfを調べるとMAINSIZEは8で、メモリ容量は8MBの設定なので設定変更にチャレンジしました。しかし、既定値設定で24MBに設定されていることがhercluesのconsoleを調べてわかり、変更することはできませんでした。CPU個数の変更はMultiProcessor定義変更によるBuildが必要で簡単ではないこともネットで調べて知りました。

この環境で何か特別な開発ができるわけではありません。当時の環境を実現して勉強をするには良い環境です。

3.所見

MVS3.8jでもTurnkey MVSはBuild済み環境を提供しています。Update 5が、2026-02-18にリリースされてます。MVSとは何だろうと感じている方には手軽に試すことができます。しかし、MVSを起動してTSOにlogon後、エディタを利用してCOBOLプログラムを記述して実行することは容易なことではありません。現在のプログラム言語(Pythonなど)と比較すると、手順は多く、実施できることは限られます。

MVSはz/OSと名前を変え、IBM System zで稼働します。参考資料を参照するとPCとは異なる次元のシステムで重要なシステムの基盤として利用されています。このベースを学習する価値はあります。MVS3.8jは2024年5月に更新されているので、もう一度、最初からBuildをやってみたいと思っています。

参考
[外部サイト参照]

コメント

過去30日間に良く読まれた記事

miniPCのBMAXでWindows11のsecure boot設定漏れでトラブル発生

OpenMythosをLinuxMint 22.3に環境構築してみました

OpenMythosをGPUを利用できるDocker環境で構築しました