| 原作者 | ロジャー・ボウラー |
|---|---|
| 開発者 | ジェイ・メイナード、ヤン・イェーガー、デイビッド・フィッシュ・トラウト、グレッグ・スミス、バーナード・ファン・デル・ヘルム、イヴァン・ウォーレン他[1] |
| 初回リリース | 1999 |
| 最終リリース | 3.13 / 2017年9月29日 |
| プレビューリリース | 4.0.0-rc0 / 2016年12月16日 |
| リポジトリ | 3.xx スピンホーク 4.0 ハイペリオン |
| 書かれた | C |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | エミュレータ |
| ライセンス | Q パブリックライセンス |
| Webサイト | ヘラクレス390 |
| 開発者 | ジェイ・メイナード、ヤン・イェーガー、デイビッド・フィッシュ・トラウト、グレッグ・スミス、バーナード・ファン・デル・ヘルム、イヴァン・ウォーレン他[2] |
|---|---|
| 安定版リリース | 4.7.0 / 2024年3月10日 |
| リポジトリ | github.com/SDL-Hercules-390/hyperion |
| 前任者 | Hercules 4.0.0 リリース候補 0 |
| Webサイト | sdl-hercules-390.github.io/html/ |
Herculesは、IBM メインフレームコンピュータ ( System/370、System/390、zSeries/System z ) およびプラグ互換メインフレーム ( Amdahlマシンなど)用に作成されたソフトウェアを他の種類のコンピュータ ハードウェア、特に低価格のパーソナル コンピュータで実行できるようにするコンピュータ エミュレータです。開発は、メインフレーム システム プログラマーの Roger Bowler によって 1999 年に開始されました。
Herculesは、 Linux、Microsoft Windows、FreeBSD、NetBSD、Solaris、macOSなど複数の親オペレーティングシステムで動作し、オープンソースソフトウェアライセンスQPLの下でリリースされています。[3] CPU命令と特定の周辺機器のみをエミュレートするという点で、BochsやQEMUに似ています。ベンダー(またはディストリビューター)はオペレーティングシステムを提供する必要があり、ユーザーはそれをインストールする必要があります。Herculesは、64ビットz/Architectureサポートを組み込んだ最初のメインフレームエミュレーターでした。
デザイン
エミュレータはほぼ完全にCで書かれています。開発者は、移植性の問題を回避するために、マシン固有のアセンブリコードの使用を除外しましたが、そのようなコードはパフォーマンスを大幅に向上させる可能性があります。例外が 2 つあります。Hercules は、SMP ホスト システムで複数の CPU をエミュレートするときに、プロセッサ間の一貫性を提供するためにハードウェア アシストを使用します。また、オペレーティング システムがそのようなサービスを提供するプラットフォームおよびx86 / x86-64プロセッサ上で、Hercules はリトルエンディアンとビッグエンディアンのデータ間の変換にアセンブラ アシストを使用します。
オペレーティング システムの状態
Hercules は、新しいメインフレームでは動作しなくなった古いバージョンも含め、すべての IBM メインフレーム オペレーティング システムと技術的に互換性があります。ただし、多くのメインフレーム オペレーティング システムは、合法的に動作するためにベンダーのライセンスが必要です。OS/390、z/OS、VSE/ESA、z/VSE、VM/ESA、z/VM、TPF/ESA、z/TPFなどの新しいライセンス オペレーティング システムは、技術的に互換性がありますが、非常に限られた状況[引用が必要]を除いて Hercules エミュレーターで合法的に動作することはできず、常に IBM からライセンスを取得する必要があります。Parallel Sysplexを有効にするIBM のCoupling Facility制御コード、およびUTSも、実行するためにライセンスが必要です。
ライセンス費用なしで Hercules 上で合法的に実行できるオペレーティング システムは次のとおりです。
- OS/360、DOS/360、DOS/VS、MVS、VM/370、TSS/370などの古いIBMオペレーティングシステムは、パブリックドメインまたは「無料で提供される著作権保護されたソフトウェア」です。 [4]
- MUSIC /SPオペレーティング システムは、著作権所有者であるMcGill Universityにリクエストすれば、教育およびデモンストレーションの目的で使用できます。MUSIC/SP の一部の機能 (特にネットワーク) には、z/VM (および IBM ライセンス) が必要です。ただし、代替の Sim390 メインフレーム エミュレーターにパッケージ化された MUSIC/SP の完全なデモンストレーション バージョンは使用できます。
- ミシガンターミナルシステム(MTS)バージョン6.0Aは、Herculesで動作するように調整されています。[5]
- オープンソースのオペレーティング システムLinux on IBM ZおよびOpenSolaris for System zを Hercules エミュレーターで実行することに対する法的制限は知られていません。これらは Hercules で問題なく動作し、多くの Linux on IBM Z 開発者[誰? ]が Hercules を使用して作業を行っています。いくつかのディストリビューターが 64 ビットの z/Architecture バージョンの Linux を提供しており、ESA/390互換バージョンも提供しているディストリビューターもあります。メインフレーム Linux ディストリビューションには、SUSE Linux Enterprise Server、Red Hat Enterprise Linux、Debian、CentOS、Slackware などがあります。Sine Nomine Associates は、z/VM が提供する機能を利用して、System z に OpenSolaris を導入しました。OpenSolaris 用のこれらの特定の z/VM 機能のエミュレーションは、Hercules バージョン 3.07 から含まれています。
- 親オペレーティング システムなしでメインフレーム上で実行できる、制約のない特定のエディターやユーティリティは、Hercules でも実行できる可能性があります。

- PDOS/3X0 (パブリック ドメイン オペレーティング システム、メインフレーム バージョン)
使用法
Hercules は、コードが移植可能 (たとえば、Linux プロセッサ アーキテクチャ間で) であること、対称型マルチプロセッシング(SMP)をサポートしていること、および 64 ビットで「クリーン」であることを検証するための開発環境として使用できます。
また、現在および以前のメインフレーム オペレーターやプログラマー、および経験のない人たちの大規模なコミュニティもあり、彼らは趣味や学習目的で Hercules やパブリック ドメインの IBM オペレーティング システムを使用しています[引用が必要]。従来の IBM メインフレーム オペレーティング システムのバージョンを探索する際に習得したスキルのほとんどは、最新バージョンを実行するライセンスを受けた IBM マシンに移行するときにも役立ちます[引用が必要]。
Hercules のオープンソースの性質は、誰でもエミュレータの独自のカスタマイズバージョンを作成できることを意味します。たとえば、Hercules プロジェクトとは無関係の開発者グループは、Hercules と自由に利用できるクラシックバージョンの MVS (および後の VM と DOS/VS) の両方に変更を加えて「S/380」と名付けたハイブリッドメインフレームアーキテクチャを実装しました[6]。これにより、オペレーティングシステムが強化され、31 ビット (2016 年現在、64 ビット) のバイナリ互換性がある程度確保され、以降のオペレーティングシステムバージョンと互換性が確保されました (2018 年現在、32 ビットもサポートされています)。
パフォーマンス
Hercules エミュレーションのパフォーマンスが実際のメインフレーム ハードウェアとどの程度一致するかを正確に判断することは困難ですが、パフォーマンス特性がかなり異なるのは当然です。これは、実際のメインフレーム ハードウェアを他の PC やサーバーと比較することが難しいことと、具体的で管理されたパフォーマンス比較が不足していることが一因です。ライセンスされた IBM オペレーティング システムのパフォーマンス比較は法的に不可能である可能性が高く、これらのオペレーティング システムは Linux などの他のオペレーティング システムとはかなり異なります。
Hercules は、処理性能をMIPSで表します。以前の System/360 および System/370 ハードウェアは古いため、コンピュータ アーキテクチャをソフトウェアでエミュレートするためのかなりのオーバーヘッドがあるにもかかわらず、中程度の性能のハードウェアで実行する場合、Hercules の方がこれらのハードウェアよりも性能が優れていると比較的安全に想定できます。ただし、新しい、部分的または完全に構成された System z マシンは、Hercules を大幅に上回ります。Hercules を実行する比較的高速なデュアル プロセッサ X86 マシンは、現実的な環境で両方のプロセッサを使用するコードで約 50 ~ 60 MIPS を維持でき、最先端の (2009 年初頭) PC クラス システムでは、持続速度が 300 MIPS まで上昇すると報告されています。Hercules は、合成命令ベンチマークやその他の小規模な計算集約型プログラムなどのタイトなループで実行する場合、ピークで 1200 MIPS を超えるパフォーマンスを生み出すことができます。
TurboHercules の共同創設者 Tom Lehmann 氏は次のように書いています。
...適度なサイズの負荷 (標準パッケージで 800 MIPS) を実行できます。問題のマシンがそれより大きい場合は、クアッド Nehalem ベースのパッケージで 1600 MIPS まで拡張できます。また、来年初めに 8 ウェイ Nehalem EX ベースのマシンをリリースする予定で、これにより 3200 MIPS のマークに到達できるはずです。それより大きいものは、システムの集合体によって複製されます。[7]
Hercules は、ピーク性能が約 29 MIPS と宣伝されている 1990 年代中盤のIBM の PC ベースのメインフレームよりも一般的に性能が優れています。より強力ではあるものの、エントリー レベルの IBM Multiprise 2000 および 3000 メインフレーム (これも 1990 年代) と比較すると、一般的な x86 ハードウェア上の Hercules は、性能の点ではミッドレンジ サーバーと見なされます。9672 Generation 1 以降のすべてのメインフレームでは、Hercules は一般的に最もローエンドのシステムになります。比較すると、2010 年代のハイエンド IBM zEnterprise 196システムは、マシンあたり 52,000 MIPS 以上を実現でき、I/O 性能の面でかなりの優位性があります。[引用が必要]エミュレートされた Sys Z プロセッサーの数が同じ場合、z/PDT は Hercules よりも約 3 倍高速です。[引用が必要]
パフォーマンス以外にも、メインフレーム オペレータに関係する非機能的なシステム属性があることに注意してください。これには、高可用性、フェイルオーバー、ホットプラグ CPU および RAM、I/O メッシュを介した I/O ルーティング、システム移行、LPAR 管理などがあります。たとえば、370/390/ESA/z アーキテクチャは、4 つの命令を使用して I/O を実装します。大規模で複雑な I/O 操作を設定して、周辺機器に渡して処理できます。I/O デバイスが操作を完了したことを通知するまで、CPU はそれ以上 I/O に関与しません。この結果、メインフレーム システムでは、"CPU サイクル" の大部分がメインフレーム CPU 自体ではなく、I/O 周辺機器に組み込まれたさまざまなプロセッサで使用されます。メインフレーム CPU は、"コンピューティング" というよりも、データ移動を調整するオーケストラの指揮者として機能します。最も単純な I/O デバイスはエミュレートできますが、複雑なシステムでは困難が伴います。
ターボヘラクレス
2009年、ロジャー・ボウラーはフランスに拠点を置くTurboHercules SASを設立し、Herculesテクノロジーを商品化しました。2009年7月、TurboHercules SASはIBMに対し、 TurboHerculesが販売するシステムで使用するためにz/OSのライセンスを顧客に供与するよう求めました。IBMは同社の要求を拒否しました。[8] 2010年3月、TurboHercules SASは、IBMがメインフレームハードウェアをメインフレームオペレーティングシステムに結び付けたとしてEUの独占禁止法に違反したとして欧州委員会の規制当局に苦情を申し立て、ECは予備調査を開始しました。[9] 2010年11月、TurboHerculesはMicrosoft Corporationから投資を受けたことを発表しました。[10] 2011年9月、ECの規制当局は何もせずに調査を終了しました。[11]
参照
参考文献
- ^ "6.1", FAQ、欧州連合:Hercules 390
- ^ "6.1", FAQ , GitHub : SDL Hercules 390
- ^ ライセンス名(アルファベット順)(リスト)、Open Source Initiative、2022年9月16日
- ^ 「2.02. 合法的に実行できるオペレーティング システムは何ですか?」、よくある質問、EU: Hercules 390 バージョン 3。
- ^ “Michigan Terminal System Archive”. 2011年1月11日時点のオリジナルよりアーカイブ。 2022年12月10日閲覧。
- ^ 「S/380 の説明」、MVS/380 プロジェクト、Sourceforge。
- ^ Hercules goes commercial! (Web log)、Oracle、2016年10月10日時点のオリジナルよりアーカイブ
- ^ TurboHercules と IBM の間の書簡のやり取り、Turbo Hercules、2011 年 10 月 12 日のオリジナルからアーカイブ。
- ^ 独占禁止法:欧州委員会、IBM の市場支配的地位の濫用疑惑 2 件について正式な調査を開始、欧州委員会、2010 年 7 月 26 日。
- ^ ニュースリリース(PDF) 、TurboHercules、2010年11月23日、 2012年3月10日時点のオリジナル(PDF)よりアーカイブ。
- ^ 反トラスト:委員会がIBMのメインフレーム保守に関する約束を市場テストし、違法な抱き合わせの疑いに関する別の訴訟を終結、EC、2011年9月20日。
外部リンク
- Hercules、Son of Z の (Tech-news.com のレビュー)
- CBTテープにはIBMメインフレームのオペレーティングシステムとその他のソフトウェアのコレクションが含まれています
- パブリック ドメイン ソフトウェア アーカイブ (Turnkey MVS CD イメージを含む)
