Multiple Virtual Storage

MVS は、1974年に発表されたIBMのメインフレーム用オペレーティングシステムの1つ。前身はOS/360のMVTやOS/VS。当初の名称は「OS/VS2 R2」であったが、後に「OS/VS2 MVS」、更に「MVS」と呼ばれた。後継はOS/390とz/OSである。

1. 概要
-----

MVS は、System/360 用のオペレーティングシステム OS/360 のバリエーションのひとつで1964年に発表された MVTの後継の SVS の後継として誕生した。

MVT は、OS/360 の最初の バリエーションである PCP  にマルチタスク機能を加えたものである。SVS はこれに、1つのアドレス空間を複数のタスクで共有する仮想記憶機能を追加したものである。MVS ではさらに、異なるタスクは異なるアドレス空間で動くことを許容する仮想記憶機能を持つことになった。

MVS はもともと、24ビットシステムをサポートした。ハードウェアの進歩に従って、XAとESAでは31ビットシステムを、z/OSでは64ビットシステムをサポートする。

オペレーティングシステム MVS のインターフェースは主に、バッチ処理のインターフェースである JCL と、対話式のコマンド・ライン・インタープリタでタイムシェアリングシステムである TSO である。TSO は最初はオプションであったが、現在では標準の機能として装備されている。ISPF は、ユーザーに TSO 機能を提供する、しかしメニューのある、形式志向の態様を持つインターフェースである。

MVSシステムは伝統的に、IBM 3270端末または、PCで動く 3270端末エミュレータ によりアクセスされる。しかしながら、今日では、メインフレームで動く多くのアプリケーションはWorld Wide WebやGUIをインターフェースに持つ。z/OSは、TCP/IPをビルトインでサポートする。システムのマネジメントは、かつては3270端末を通して行われたが、今日では、ハードウェア・マネジメント・コンソールや、さらにウェブ/インターネットで使用されるインターフェースを介して行われることも増えている。オペレーター・コンソールは 2074エミュレータ で提供されるので、3270接続を介して OS/390 や z/OS のプロセッサにアクセスすることはありそうにない。z/OS はまた、POSIXアプリケーションの実行をネイティブ・サポートする。

1つの MVS は1つの物理システムを占有する。その論理的な単位を1つの「論理区画」という。z/VM 下では、それを1つのヴァーチャル・マシンと呼んだ。複数の MVS が組織化・編成され、「Systems Complex」と呼ぶ1つの構造体に共同で管理されることが可能になったのは、1990年9月のことである。複数の LPAR 間のオペレートは、「Cross-system Coupling Facility」または「XCF」と呼ばれるソフトウェア・コンポーネントと、「Hardware Coupling Facility」または「CF」あるいは「ICF」と呼ばれるハードウェア・コンポーネントを通して行われる。複数のSysplexは、TCP/IP や IBM の製品である「Systems Network Architecture」といった標準的なネットワークプロトコルによって結びつけることが出来る。複数のLPAR は、Linux on IBM System z、z/VSE、z/TPF、z/VM といった異なるオペレーティングシステムで稼動させることができる。

MVS は主にビジネスや銀行のシステムに使われ、MVS 上で動く業務アプリケーション・プログラムは主にコボルで記述される。COBOLのプログラムは、伝統的に、IMS  や CICS  のようなトランザクション処理システムで使われる。CICS で動くプログラムには、COBOL プログラムのソースコードに特別な EXEC CICS ステートメントが挿入される。プリプロセッサは、プログラムのコンパイルの前に、これらの EXEC CICS ステートメントを、CICS をコールする COBOL のコードに変換する。DB2をコールする SQL の場合と似ている。業務アプリケーションはもちろん、C言語、C++、Java、アセンブリ言語、FORTRAN、BASIC、RPG、REXXなど他のプログラミング言語で書くことも出来る。これらの言語のサポートは「Language Environment」「LE」と呼ばれる共通コンポーネントにパッケージされていて、デバッグ、トレース、プロファイリングや、その他の各言語独自の機能を提供する。

2. MVSファイルシステム
--------------

ファイルは、MVS では「データ・セット」と呼ばれる。これらのファイルは「カタログ」によって組織・系統が立てられる。MVS の本来の文字コードはビッグ・エンディアン EBCDICだが、ASCIIやリトル・エンディアン、Unicodeのトランスフォームのソフトウェアサポートのためのhardware-specific serviceを持つ。

MVS の伝統的なファイルシステムは、レコード・オリエンテッド・ファイルシステムである。ファイル名は階層的に組織・編成され、ドットによって分けられる。それぞれの階層の名前は、8文字まで認められる。ファイル名の全体の長さは、44文字までである。

大体、ドットによって分けられたコンポーネントは、他のオペレーティングシステムのディレクトリのように使われる。たとえば、最上階のコンポーネントは、通常プロジェクト名やサブシステム名や機能名やユーザーの名前を表現する。しかしながら、これは他のシステムのものとは違って、本当のディレクトリではない。ネーミング上の慣例にすぎない。

区分データセットは、ある意味で1階層のディレクトリに似ている。MVS は幅広いファイルアクセス方式をサポートする。これは主として、レガシーニーズによるものである。これらにはVSAM、BSAM、QSAM、その他が含まれる。MVS のファイルシステムは、IBM が何年にも渡って使用し続けた ディスクストラクチャ VTOC  に基づいている。

MVS の2006年現在のバージョンである i.e. z/OS は、POSIXコンパチブルである「slash」ファイルシステムをサポートする。これは2つのファイルシステムの長所を一緒に統合するものである。すなわち、POSIX は MVS のデータセットを POSIX 下で稼動するプログラムで取り扱うことができ、POSIX 下で稼動するサブシステムで使用することができる、というものである。このような新しいファイルシステムとしては、「Hierarchical File System」、「zFS」がある。

//→ データセット  および ファイル編成法 も参照//

3. 歴史
-----

MVS が最初に発表されたのは1974年。改訂されて次に出された同オペレーティングシステムの名前は MVS/XA 、次が MVS/ESA 、UNIX System Services 機能が追加された次の版はOS/390、64ビットシステムをサポートすることになったz/OSと続く。このオペレーティングシステムの中核の部分は、根本的にはシリーズを通して変わっていない。設計上、MVSのために書かれたプログラムはz/OSにいたるまで、モディファイを受けずに動いている。

MVS は2006年現在ではサポートが終了している。IBM は、31ビットコンバチブルの z/OS のサポートも2007年までに終了することを公表しており、以後は、64ビットの z/OS のみ公式なサポートが受けられることになる。MVS はこれからも、エンタープライズオペレーティングシステムのフラッグシップとして、最先端の改良を受け、その先端性を拡張し続ける。その機能強化は上記で述べられているものに加えて、下記のものを含む。

XML 
network file systems
NFS Version 4
Common Internet Filing System/SMB
Transport Layer Securitysupport throughout 
removal of previous architectural limits
encrypting file systems
Workload Manager 
special Java acceleration 
Hipersocketsz/OS の下では古い24ビットの MVS アプリケーションが稼動し続けている一方、たとえば、64ビットのハードウェアで動く Java プログラム、フレキシブルなマウントと長いファイル名をサポートする堅牢なファイルシステム上の Unicode XML フォーマットのデータが今まさに書き続けられ、IPv6 と速い CFs で、最新のパフォーマンス拡張SQLを使用した地理学的にひしめいた関係データベースとコミュニケーションをとり続けている。

4. 関連項目
-------

コンピュータシステム
情報処理システム
情報システム
IBM
メインフレーム
マシン
System/360
System/370
System z
オペレーティングシステム 
OS/360
OS/390
z/OS
ツール/ユーティリティ/ミドルウェア/ネットワーク/その他
JCL
IBM メインフレーム ユーティリティプログラム
JES
データセット 
IMS
DB2
CICS
Systems Network Architecture 
VTAM
ダム端末
IBM 3270 
端末エミュレータ
Time Sharing Option 
ISPF
コマンドラインインタプリタ

5. 外部リンク
--------

[1]
url=http://www33.ocn.ne.jp/~yfuku/mvs/mvsindex.html