DOS/360

IBMメインフレームオペレーティングシステム DOS/360|OS_360



Disk Operating System/360 (D[OS/360|OS_360]])は、IBMメインフレーム用の歴史的なオペレーティングシステム]です。1964年末に[[IBMによって発表され、1966年6月に最初に提供されました。1960年代当時、DOS/360|OS_360は世界で最も広く利用されたOSの一つでした。

DOSの主なバージョン



TOS/360|OS_360



TOS/360|OS_360 (Tape Operating System/360)は、System/360初期のOSで、主にSystem/360 Model 30などのプラットフォームをサポートしていました。TOSはテープドライブを必要とし、コードやマニュアルの一部はDOS/360|OS_360と共通でした。14回の更新を経て、ディスクドライブの価格低下により更新が終了しました。

DOS/360|OS_360



DOS/360|OS_360は、小型から中型のSystem/360モデルで最初の選択肢となるOSでした。

DOS/VS



1972年にリリースされたDOS/VSは、System/370シリーズの仮想メモリ機能をサポートし、最大16MBのメモリを管理できました。同時に実行できるプログラムパーティションの数が3から5に増強され、システム全体で15のサブタスクが実行可能でした。DOS/VSは、後のDOS/VSE、そしてz/VSEへと進化しました。

DOS/VSE



1979年リリースのDOS/VSEは、新機種の4300プロセッサをサポートする拡張版で、プロセッサとI/Oチャネルを単一レベルのストレージとして扱えるECPS:VSE機能を搭載していました。このOSが無料で提供された最後のバージョンです。

SSX/VSE



SSX/VSE (Small System Executive)は、OSとアプリを組み合わせたパッケージで、VSEの販売を簡略化する目的で提供されました。14のコンポーネント製品がバンドルされていましたが、独占禁止法の指摘を受け、個別の販売も行われるようになりました。

VSE/SP



1986年にリリースされたVSE/SP (System Product)は、9370プロセッサーとともに発表されました。SSX/VSEの後継で、VSEで人気のある製品がバンドルされていました。顧客はXA(31ビット)バージョンを望みましたが、VSE/SPは24ビットアドレスのみをサポートしていました。

VSE/ESA



1990年リリースのVSE/ESAは、DOS/VSEの31ビット版で、最大384MBの実ストレージをサポートしました。最大12本の静的パーティション分割が可能で、動的パーティションでは最大150個のジョブが並列実行できました。バージョン1はESAと370の両方のモードをサポートし、バージョン2はESAハードウェアのみをサポートしました。

z/VSE



2005年、IBMはz/VSE 3.1をリリースしました。このバージョンはSystem zブランドを表していますが、アーキテクチャの大きな変更はありませんでした。z/VSE 4.1では64ビットのリアルアドレッシングに対応しましたが、アプリケーションの仮想メモリ空間は31ビットのままでした。2011年時点で、約4000の組織がz/VSEを利用していたと推定されています。

歴史的背景



System/360 (S/360)の登場時、IBMはローエンドでも動作する共通OSとしてOS/360|OS_360のみを提供する予定でした。しかし、OS/360|OS_360の開発遅延により、IBMは急遽4つのOSを追加する必要に迫られました。


OS/360|OS_360は1年遅れてリリースされ、最低64KBのメモリが必要でした。一方、DOSは16KBでも動作可能で、ローエンドのS/360 Model 30で利用可能でした。当初、DOS/360|OS_360はシングルジョブシステムでしたが、後にマルチタスク版が追加されました。

DOS/360|OS_360は、OS/360|OS_360が利用可能になるまでの繋ぎとして開発されました。しかし、多くの顧客がDOSに投資したため、IBMは継続的にDOS/360|OS_360をサポートする必要がありました。また、ゼロックスデータシステムのゼロックスOS (XOS)は、プログラム移植を容易にするため、意図的にDOSを模倣しました。

動作環境



DOS/360|OS_360には、System/360 CPUのModel 25以上、最小16KBのメモリが必要でした。マルチプログラミング機能を利用しない場合はストレージ保護機能は不要でした。必要な周辺機器として、プリンターキーボード、セレクターまたはマルチプレクサーチャネル、少なくとも1台のディスクドライブが必要でした。S/360 model 30では、32KBのメモリ、カードリーダー、プリンター、ディスクドライブ、磁気テープドライブ、コンソールが一般的な構成でした。

技術詳細



DOS/360|OS_360は、メモリ消費量を削減するため、フルアセンブラで記述されました。OSの常駐部分であるDOSスーパーバイザは、約5902バイトと非常にコンパクトでした。トランジェントというオーバーレイ的な仕組みを採用し、必要な時にだけ読み込むことでメモリ消費をさらに削減しました。

トランジェント



トランジェントには、物理トランジェントと論理トランジェントの2種類があり、それぞれハードウェア例外やプログラムサービスを提供しました。トランジェントモジュールは、ディレクトリの先頭に名前の一覧を格納することでロードを高速化しました。

マルチプログラミング



初期のDOSでは一度に1つのプログラムしか実行できませんでしたが、後のバージョンでは最大3つのプログラムを同時に実行できました。各パーティションには、BG (バックグラウンド)、F1 (フォアグラウンド1)、F2 (フォアグラウンド2)の名前が付けられていました。DOS-VSでは最大7つのプログラムを同時に実行できましたが、実際のシステム構成では5~6本が一般的でした。

プログラムライブラリ



実行可能プログラムはコアイメージライブラリ(CIL)に格納されました。プログラムの実行中は削除や差し替えができなかったため、CILがいっぱいになるとユーティリティプログラムで圧縮する必要がありました。リロケータブルライブラリ、アセンブラマクロのソースステートメントライブラリ、組み込みテキストもサポートされていました。

ユーティリティ



DOS/360|OS_360にはアセンブラ、FORTRANとCOBOLコンパイラ、各種ファイル構成に対応したインターフェースなどのユーティリティプログラムが付属していました。後のバージョンではPL/I|PL_Iも追加されました。

  • - シーケンシャルデータセット - レコードを順番に読み書きする
  • - インデックス付きファイル(ISAM) - キーでレコードを検索する
  • - ダイレクトアクセスファイル(BDAM) - アプリケーションが物理位置を指定する

通信機能



DOS/360|OS_360は、データ通信機能としてBTAMを提供していました。BTAMは当時の標準的な通信プロトコルが少ない中で、さまざまな種類の端末と通信が可能でした。APIがシンプルだったため、外部通信プロセッサとの接続も容易でした。

ジョブ制御



DOSジョブ制御ステートメントは、カードの先頭2文字が必ず`//`で始まります。ジョブの終了は`/&`、データの終了は`/`、コメントは``で始まります。

  • - `JOB` - ジョブの開始を宣言
  • - `EXEC` - 実行するプログラムを指定
  • - `PAUSE` - オペレーターの介入を要求
  • - `COMMENT` - コメントを表示
  • - `データ終了` - データストリームの終わりを示す
  • - `ジョブ終了` - ジョブの終了を示す
  • - `OPTION` - システムオプションを設定
  • - `ASSGN` - 論理I/Oユニットを物理デバイスに割り当てる
  • - `RESET` - I/Oユニットの割り当てをリセット
  • - `LISTIO` - I/Oユニットの割り当てを表示
  • - `MTC` - 磁気テープ装置にコマンドを発行
  • - `VOL` - ボリュームラベル情報を指定

OS/360|OS_360との違い



  • - ジョブ制御言語: DOS JCLはシンプルさを優先したため、OS/360|OS_360よりも可読性が低かった。
  • - スプーリング: DOS初期バージョンにはスプーラサブシステムがなく、IBMやサードパーティが後に提供した。
  • - プログラムの読み込み: DOSにはリロケータブルバイナリローダがなく、手動でアドレスを修正する必要があった。
  • - API: DOS/360|OS_360OS/360|OS_360のAPIには互換性がなかった。DOS用のプログラムはOS/360|OS_360で実行するために再コンパイルとリンクが必要でした。

関連項目




参考文献



  • - Bitsavers.orgのDOSマニュアル
  • - VintageBigBlue.orgのDOS / VSセクション
  • - Free On-line Dictionary of Computingの資料(GFDL v1.3以降に基づき組み込み)

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。