2011年07月03日
汎用機【1】
今回は、ちょっと趣向を変えまして
メインフレーム(大型汎用コンピュータ)とは
について説明していきたいと思います。
普段『大型汎用コンピュータ』に触れる事は無い方も多々いると思います。
その中で今回は入社以来、大型汎用コンピュータのシステム開発に携わらせて貰っている
メンバーからの投稿です。大変為になると思いますので興味のある方は是非
でわ早速
普段皆さんが使用するパソコンとは違い、日常生活において見ることのない(見ることが出来ない)
大型汎用コンピュータについて、特徴、用途等を簡単にお話させていただきます。
メインフレーム(英: mainframe)は、
企業の基幹業務などに利用される大規模なコンピュータを指す用語である。
汎用コンピュータ、汎用機、汎用大型コンピュータ、大型汎用コンピュータ、ホストコンピュータ
などとも呼ばれています。
●誕生
1950年に世界最初の商用コンピュータUNIVAC I(*1)が登場した。
企業など大規模組織の基幹業務での使用に耐えるように、次第に以下の特徴を持った。
*1)世界初の商用コンピュータ。1950年に完成し、1951年にレミントンランド社(現Unisys)が発売。
Universal Automatic Computer(万能自動計算機)の略。初の事務処理用途のコンピュータでもある。
・大量のデータ処理能力(CPU性能だけでなく、特に入出力性能)
・1台で多数の業務処理を並行して処理するワークロード管理
・徹底した冗長化などによる、高度な信頼性と可用性
・大組織に必要な、厳格な運用管理機能とセキュリティ機能
・メーカー側の長期計画や保守体制
●特徴
CPU
独自仕様のCISC CPUを複数(最大64個など)搭載するものが多い。
使用した空冷方式に移行して低価格・小型化に成功し、
処理性能はクラスタリングで補う方向に転換した。
従来は上位機種は高速・高価・高発熱のバイポーラを使用した水冷方式が主流だったが、
1990年代にIBM、富士通、日立製作所、日本電気はCMOSをIBM系では、System/360は24ビット、
System/370-XA 以後は32ビット(論理31ビット。1ビットは互換性のために使用)だが、
z/Architecture 以後は64ビットである。
I/O
チャネルと呼ばれるI/O専用プロセッサを多数(モデルにより最大1024個など)搭載できる。
チャネルはI/Oに伴うCPUの負荷を軽減する。
オープン系で一般的なインテリジェントな外部バスと異なり、
接続経路が高負荷(ビジー)な場合には別経路を選択して使用する、
I/Oの飛び越し(優先度の高いI/O要求が来た場合、既に実行中の他のI/Oに優先して結果を返す)
などができる。
一般に「メインフレームのCPUは高速と思えないのに、
高負荷時にも安定稼動して一定の応答時間も得られる」、
「オープン系のCPUは高速なのに、負荷がある時点に達すると急速にスループットが低下する」
などはI/Oの基本設計の違いによる場合が多い。
これは、メインフレームの場合、I/Oの制御をOSから切り離し、
上記の専用プロセッサに任せているためである。
したがって、一つの重いI/O要求が発生しても、OSは併行してタスク処理を進めるので、
著しいレスポンスの低下を回避できる。
クラスタリング
メインフレームでは複数のOSが同一の磁気ディスク装置を共有(シェアー)する事は一般的であり、
整合性を保つためのキャッシュやロックなどの排他制御は、
OSレベルで実現している(IBM IRLM、並列シスプレックスなど)。
更にミドルウェアのクラスタリング機能(IBM XRFなど)を組み合わせた場合は、
障害発生時にディスクやプロセスの引継ぎをする事なく、
待機系(アクティブスタンバイ)が瞬時に処理を引き継ぎ、
ユーザーには瞬間的な業務停止も見せない、
更には障害機で処理中であったトランザクションも、
TPモニタのログから可能な限り復元し引き継ぐ事ができる。
OS
メインフレームでは各社の複数の独自OSに加え、一部はオープン系のOSも同時稼働できる。
IBM系(IBM、富士通、日立製作所)の主流OSは、歴史的にはバッチ処理主体で始まり、
複数アドレス空間、I/O割込ベースのマルチタスク、
ジョブ制御言語によるプログラマーとオペレータの分離などを持つ。
更にオンライン・リアルタイム処理のためのタイムシェアリング、トランザクション処理を構築した。
各社OSとも大規模用と中小規模用の流れがあり、コマンドやジョブ制御言語の構文などが異なる。
「メインフレームのOS」と言うとこれらを指す場合が多い。
プログラミング言語
メインフレーム上で使われている主なプログラミング言語には、
当初からの各アーキテクチャ用のアセンブリ言語に加え、
伝統的な高級言語であるCOBOLやFORTRANやPL/I、およびC言語、C++、Javaや、
各ベンダー独自の4GL(*2)などがある。
*2)4GL とは、第四世代言語 (4th generation language)の略である。
FORTRANやCOBOLのような手続き型言語より、
より高機能なプログラム言語を一般的に指す。
主にアプリケーションプログラムを開発する際に用いられる。
4GL言語は単体で存在することよりも、
特定のアプリケーション開発システム(たとえばデータベースシステム)と
組になって提供されることが多い。
たとえば、OracleのPL/SQLなどである。
性能
メインフレームはI/Oを含めた平行稼働やワークロード管理により複数業務の並行稼動性に優れている。
スループット(*3)が安定しているので、大規模バッチ、大規模帳票出力業務などに強い。
*3)スループット(英: Throughput)は、一般に単位時間当たりの処理能力のこと。
・コンピュータやネットワークが一定時間内に処理できるデータ量のこと。
レイテンシ(データ転送などを要求してから、その結果が返送されるまでの遅延時間)と
ならんで、パフォーマンスの評価基準となる。
難しい話だったかもしれませんが、自分なりに調べてみると面白いですよ
次回は、『大型汎用コンピュータ』の用途について説明したいと思います。
ブログランキングに参加しています。
---------------------------------------------------------------------------------------------------------------
■ 弊社の事をお知りになりたい方
■ その他、ご相談やご連絡を取りたい方は
画面上部の「オ-ナ-へメッセ-ジ」よりご連絡を下さい。
メインフレーム(大型汎用コンピュータ)とは
について説明していきたいと思います。
普段『大型汎用コンピュータ』に触れる事は無い方も多々いると思います。
その中で今回は入社以来、大型汎用コンピュータのシステム開発に携わらせて貰っている
メンバーからの投稿です。大変為になると思いますので興味のある方は是非
でわ早速
普段皆さんが使用するパソコンとは違い、日常生活において見ることのない(見ることが出来ない)
大型汎用コンピュータについて、特徴、用途等を簡単にお話させていただきます。
メインフレーム(英: mainframe)は、
企業の基幹業務などに利用される大規模なコンピュータを指す用語である。
汎用コンピュータ、汎用機、汎用大型コンピュータ、大型汎用コンピュータ、ホストコンピュータ
などとも呼ばれています。
●誕生
1950年に世界最初の商用コンピュータUNIVAC I(*1)が登場した。
企業など大規模組織の基幹業務での使用に耐えるように、次第に以下の特徴を持った。
*1)世界初の商用コンピュータ。1950年に完成し、1951年にレミントンランド社(現Unisys)が発売。
Universal Automatic Computer(万能自動計算機)の略。初の事務処理用途のコンピュータでもある。
・大量のデータ処理能力(CPU性能だけでなく、特に入出力性能)
・1台で多数の業務処理を並行して処理するワークロード管理
・徹底した冗長化などによる、高度な信頼性と可用性
・大組織に必要な、厳格な運用管理機能とセキュリティ機能
・メーカー側の長期計画や保守体制
●特徴
CPU
独自仕様のCISC CPUを複数(最大64個など)搭載するものが多い。
使用した空冷方式に移行して低価格・小型化に成功し、
処理性能はクラスタリングで補う方向に転換した。
従来は上位機種は高速・高価・高発熱のバイポーラを使用した水冷方式が主流だったが、
1990年代にIBM、富士通、日立製作所、日本電気はCMOSをIBM系では、System/360は24ビット、
System/370-XA 以後は32ビット(論理31ビット。1ビットは互換性のために使用)だが、
z/Architecture 以後は64ビットである。
I/O
チャネルと呼ばれるI/O専用プロセッサを多数(モデルにより最大1024個など)搭載できる。
チャネルはI/Oに伴うCPUの負荷を軽減する。
オープン系で一般的なインテリジェントな外部バスと異なり、
接続経路が高負荷(ビジー)な場合には別経路を選択して使用する、
I/Oの飛び越し(優先度の高いI/O要求が来た場合、既に実行中の他のI/Oに優先して結果を返す)
などができる。
一般に「メインフレームのCPUは高速と思えないのに、
高負荷時にも安定稼動して一定の応答時間も得られる」、
「オープン系のCPUは高速なのに、負荷がある時点に達すると急速にスループットが低下する」
などはI/Oの基本設計の違いによる場合が多い。
これは、メインフレームの場合、I/Oの制御をOSから切り離し、
上記の専用プロセッサに任せているためである。
したがって、一つの重いI/O要求が発生しても、OSは併行してタスク処理を進めるので、
著しいレスポンスの低下を回避できる。
クラスタリング
メインフレームでは複数のOSが同一の磁気ディスク装置を共有(シェアー)する事は一般的であり、
整合性を保つためのキャッシュやロックなどの排他制御は、
OSレベルで実現している(IBM IRLM、並列シスプレックスなど)。
更にミドルウェアのクラスタリング機能(IBM XRFなど)を組み合わせた場合は、
障害発生時にディスクやプロセスの引継ぎをする事なく、
待機系(アクティブスタンバイ)が瞬時に処理を引き継ぎ、
ユーザーには瞬間的な業務停止も見せない、
更には障害機で処理中であったトランザクションも、
TPモニタのログから可能な限り復元し引き継ぐ事ができる。
OS
メインフレームでは各社の複数の独自OSに加え、一部はオープン系のOSも同時稼働できる。
IBM系(IBM、富士通、日立製作所)の主流OSは、歴史的にはバッチ処理主体で始まり、
複数アドレス空間、I/O割込ベースのマルチタスク、
ジョブ制御言語によるプログラマーとオペレータの分離などを持つ。
更にオンライン・リアルタイム処理のためのタイムシェアリング、トランザクション処理を構築した。
各社OSとも大規模用と中小規模用の流れがあり、コマンドやジョブ制御言語の構文などが異なる。
「メインフレームのOS」と言うとこれらを指す場合が多い。
プログラミング言語
メインフレーム上で使われている主なプログラミング言語には、
当初からの各アーキテクチャ用のアセンブリ言語に加え、
伝統的な高級言語であるCOBOLやFORTRANやPL/I、およびC言語、C++、Javaや、
各ベンダー独自の4GL(*2)などがある。
*2)4GL とは、第四世代言語 (4th generation language)の略である。
FORTRANやCOBOLのような手続き型言語より、
より高機能なプログラム言語を一般的に指す。
主にアプリケーションプログラムを開発する際に用いられる。
4GL言語は単体で存在することよりも、
特定のアプリケーション開発システム(たとえばデータベースシステム)と
組になって提供されることが多い。
たとえば、OracleのPL/SQLなどである。
性能
メインフレームはI/Oを含めた平行稼働やワークロード管理により複数業務の並行稼動性に優れている。
スループット(*3)が安定しているので、大規模バッチ、大規模帳票出力業務などに強い。
*3)スループット(英: Throughput)は、一般に単位時間当たりの処理能力のこと。
・コンピュータやネットワークが一定時間内に処理できるデータ量のこと。
レイテンシ(データ転送などを要求してから、その結果が返送されるまでの遅延時間)と
ならんで、パフォーマンスの評価基準となる。
難しい話だったかもしれませんが、自分なりに調べてみると面白いですよ
次回は、『大型汎用コンピュータ』の用途について説明したいと思います。
ブログランキングに参加しています。
---------------------------------------------------------------------------------------------------------------
■ 弊社の事をお知りになりたい方
■ その他、ご相談やご連絡を取りたい方は