前へ | 次へ | 目次 | 索引 |
「OpenVMS のすばらしさはわかってきた気がするんですけど,残念ながらあまり使われている場面を見たことがないんですけど。」
「うんうん,確かに日常的にお目にかかるというわけにはいかないだろうけど,聞いたところでは,全世界で 50 万台,約 1 千万人のユーザがいるそうだ。」
「どんな分野で利用されているんですか?」
「これも聞いた話では,全世界の十大証券取引所の 5 つで OpenVMS が取引業務に利用されているそうだ。また,全世界の携帯電話の課金処理の 50 %以上が OpenVMS で処理されている。そして全世界の CPU チップ生産の 90 %以上は OpenVMS が管理している。」
「日本ではどうなんですか?」
「製造業やテレコム業界で,よく利用されているようだね。特に半導体や液晶の生産管理システムで採用されているのは,よく話題になっている。」
「なんだか裏方的な役割が多いですね。」
「そうだね。しかし,取引業務や課金処理,生産管理など,その事業の根幹に関わるサービスを提供する役割なんだ。クライアント・システムのように,直接利用するシステムではないけれど,僕らの社会を支える基盤サービスを提供しているなくてはならないオペレーティング・システムといえるだろう。」
「ところで,さきほど OpenVMS が誕生して 20 年以上になるっておっしゃってましたけど,そんなに古いオペレーティング・システムなんですか?」
「ハハ,古いとは人聞きが悪いね。OpenVMS のすばらしさは,その 20 年以上にわたって,常にその時代の先端になる機能を提供しつづけているということなんだ。それでは,OpenVMS の栄光の歴史を年代記風に辿ってみるとするかな。」
1.2.1 VMS の誕生
「OpenVMS はいつ誕生したんですか?」
「VMS V1.0 が発表されたのは 1977 年だ。同時に最初の VAX システム,VAX-11/780 が発表されている。これは完全な 32 ビット・アドレッシングのシステムとしては,最初のものの 1 つだろうね。当時は,OpenVMS ではなくて,VMS と呼んでいたんだ。ちなみに,VMS を開発したのは DEC ,ディジタル・イクイップメント社だ。」
「仮想メモリ・システム Virtual Memory System の頭文字をとって命名されたんだ。32 ビット・アドレッシングという当時としては使い切れないほどの大規模なメモリ空間をサポートする一番重要な機能,仮想メモリ・システムにあやかったんだろうね。」
「ところでさっき,シングル・アーキテクチャが最初から構想されていたという話がありましたけど。」
「実は,DEC は 16 ビット・アドレッシングのシステム,PDP の時代に重大な問題を抱えていた。DEC では PDP のために用途ごとに異なったオペレーティング・システムを提供していたんだ。この方式では,アプリケーションの互換性がなくなってしまうし,開発や管理のコストが増大してしまう。OpenVMS と VAX の開発では,この問題に対する深刻な反省の結果として,シングル・アーキテクチャというコンセプトが採用されたんだ。つまり,1 つのプラットフォーム,1 つのオペレーティング・システムというキャッチフレーズだ。」
1.2.2 ネットワーキング
「ところで,OpenVMS ではインターネットの他に,DECnet というネットワーク・システムを持っていると聞いたんですけど。」
「実は,シングル・アーキテクチャのキャッチフレーズには,続きがあって,1 つのネットワークで締めくくられる。それほど,ネットワーキングを重要視していたんだね。そして,ネットワーキングでシングル・アーキテクチャを締めくくる製品が DECnet だったわけだ。実際,DECnet は VMS V1.0 から同時に提供されているんだ。」
「インターネットに関しては,どうでしょうか?」
「 DEC は,インターネットの開拓者の 1 つといえるだろうね。たとえば,イーサネットの開発/標準化をゼロックス,インテルと共同で行っている。その他にもさまざまなインターネット技術が DEC の技術者の手で開発されている。初期のファイアウォールも DEC の技術者によって開発されたんだ。OpenVMS 上のインターネット製品に関しては,DECnet が成功しすぎたこともあって,いささか出遅れていたけれど,現在では IPv6 や IPsec など先端の技術が提供されている。」
1.2.3 クラスタリング
「クラスタリング機能は15年以上前に登場したとおっしゃってましたね。」
「正確には,1983 年のことになる。当時は,VAXcluster と呼んでいたんだ。」
「 UNIX や Windows のクラスタリングが登場する 10 年以上前なんですね。」
「驚くべきことに,この最初の発表当時に,現在のクラスタリング技術の基本コンセプトが全て提供できていたということだ。特に重要なことは,クラスタ・システムを1つのマシン環境のように見せるシングル・システム・イメージが最初から実現されていたと言うことだ。これは,現在でも,UNIX や Windows のクラスタ・システムでは,ほとんど実現できていない。」
「登場時点で完成されたクラスタ・システムだったわけですね。そして,その後の発展はどうなんでしょうか?」
「クラスタ・システムで一番重要なコンポーネントは,クラスタ・メンバ間を接続するインターコネクトなんだ。発表当初はインターコネクトとして,専用のハードウェアが必要だったんだ。クラスタリング技術を普及させるために,このインターコネクトの選択肢として,より安価で標準的なハードウェアを提供する必要があると考えたんだね。そこで,以降のバージョンでは,イーサネットや FDDI などが順次サポートされていったんだ。」
「OpenVMS は,災害にも対応できるって聞いたんですけど。」
「そう,それもクラスタリングの機能を利用している。対災害性を強調するために,ディザスタトレランスと呼んでいる。ディザスタトレランスというのは,ビル全体や地域全体に被害が及ぶような,火災や地震といった災害に対しても,サービスの継続を保証する技術なんだ。具体的には一種のクラスタ・システムなんだが,クラスタのメンバが,数十キロから数百キロ離れた場所に配置される。」
「それでどちらか一方のメンバが被害を受けても,のこりのメンバがサービスを継続できるんですね。クラスタ・システムでそんなことまで実現できるんですね。」
「もちろん,現在のクラスタ・システムで,ここまでサポートできるのは,OpenVMS だけなんだ。クラスタ・システムの頂点に立っていると言えるだろうね。」
1.2.4 Alpha と 64 ビット・オペレーティング・システム
「 Alpha システムはいつ頃から登場したんですか?」
「ようやく僕の時代に入ってきたね。Alpha チップと Alpha システムが発表されたのは,1992 年のことになる。」
「えー,上司からは VAX 世代の Z さんって聞いたんですけど。」
「むむむ,それはさておき,Alpha と聞いて何を思いつくかな?」
「ともかく早いということでしょうか。」
「そうだね,しかしソフトウェアの側から見ると,世界最初の 64 ビット・アドレッシングということが重要なんだ。1992 年当時では,まだまだ 32 ビット・アドレッシングで十分という意見が多かったが,最近ではデスクトップ PC でも数百MBのメモリが必要になっている。まして,サーバ・システムでは数 GB 単位でメモリを持つことが常識になっている。また,それに対応してアプリケーションの側でも大規模なメモリ空間を利用した高速化が当然のこととして行われている。この大容量の実メモリと大規模なメモリ空間を有効に使い切るためには,64 ビット・アドレッシングは必須の機能になっている。」
「つまり,Alpha は時代を先取りして,現在の 64 ビット・アドレッシングによる高速サーバ・システムの時代を切り開いたんですね。」
「もちろん,OpenVMS もこの64ビット・アドレッシングにいち早く対応し,その可能性を追求している。 たとえば,大容量の実メモリを利用して,データベースの高速化を図る VLM,Very Large Memory などが既に提供されている。しかし,64 ビットというほとんど無限大のアドレス空間は,まだまだ無限の可能性を秘めていると言えるだろうね。その可能性を極めることが,OpenVMS に課せられた 21 世紀にまたがる課題と言えるだろう。」
「ところで年代記で重要な点にまだ触れていただいていないんですけれど。」
「なんだい?」
「いつ VMS が OpenVMS になったんでしょう?」
「これはうっかりしてた。OpenVMS に正式に名称を変更したのは,1991 年で Alpha の発表とほぼ同期しているね。OpenVMS は 1 つの企業が設計 / 開発しているオペレーティング・システムだけど,そのインタフェースとしては POSIX や OSF/Motif などオープンな規格が採用されている。オペレーティング・システムとしてのオープン性を強調するネーミングと言えるだろう。」
「さきほど,21 世紀にまたがる課題とおっしゃってましたけど,OpenVMS の将来はどうなんでしょうか?」
「進歩しないものに未来はない。年代記でも説明したように,OpenVMS は常にその時代の最先端の技術を提供しつづけている。これは今後とも変わりないことだと思うよ。問題はどの分野にフォーカスするかということだね。」
「具体的にどの分野にフォーカスしていくんでしょうか?」
1.3.1 インターネットとWebアプリケーション
「まず,これからのアプリケーション開発を考えた場合,インターネットの利用は避けて通れないことだろう。当然,OpenVMS でもインターネットへの取り組みは重要だね。OpenVMS とインターネットの関わりを考えると,IPv6 など基礎的な分野に対しては十分に対応してきたと言えるだろう。」
「最近はやりの WWW や eCommerce への取り組みはどうでしょうか?」
「残念ながら,この分野は UNIX や Windows に一日の長があると言わざるを得ないね。しかし,状況は変わりつつある。Java や XML のようにプラットフォームに依存しない開発環境が,Web アプリケーションの主流になってきているんだ。これは,OpenVMS にとってはチャンスと言えるだろうね。」
「具体的にはどのようなツールが提供されているんでしょうか?」
「たとえば,Web サーバとしては Apache ベースの CSWS,Compaq Secure Web Server を提供している。このようにオープン系のツールをうまく利用することを考えているようだね。オープン系のツールとしては,Tomcat や XML 関連のツールが既に提供されているし,今後 Java の IDE や Web サービス関連のツールなどが出てくるだろう。もちろん並行して,商用のツールのサポートも進めている。」
1.3.2 クラスタリングの未来と Galaxy
「クラスタリング機能はどうなんでしょうか?既に完成済みですか?」
「クラスタリング機能そのものは,更に完成度を高め,より高速で安定したクラスタ・システムを提供することを目標にしている。新しい展開としては,新しいインターコネクトのサポートがやはり重要だろうね。専用のインターコネクトとしてはメモリ・チャネル,標準化されたものとしてはギガビット・イーサネット,ファイバー・チャネルなどがサポートされてきている。ところで拡張性・信頼性といった特性に対するまったく新しい動向としてはパーティショニングがある。」
「クラスタリングが複数のマシンを 1 つのシステムにまとめる技術なのに対して,パーティショニングは1つのマシンを複数のシステムに分割する技術だ。」
「今度は分割しちゃうんですか?」
「そう,GS320 に代表されるように,現在のハイエンドのサーバ・マシンは 1 台で数十 CPU をサポートするようになっている。しかしながら,現実のアプリケーションで数十 CPU を完全な並列処理を実現できるものがそんなに存在するわけではない。一方,複数のアプリケーションを 1 つのオペレーティング・システム上で並列に処理するマルチ・プログラミングにしても,数十 CPU という環境ではシステム・リソースの競合などで,必ずしも期待したパフォーマンスが提供できない場合が多くなる。これを解決するのが,パーティショニングだ。」
「 1 つのマシンで複数のオペレーティング・システムを稼動させるんですか?」
「パーティショニングにはいくつか方式がある。1 つは,ハードウェアの機能として,複数のオペレーティング・システムを稼動できるようにするハードウェア・パーティショニングだ。この場合は,ハードウェア・レベルでマシンのリソースを分割することになるので,リソースの割り当てが固定的になってしまうが,分割された 1 つの部分,パーティションの障害が,他のパーティションに波及することはない。また,ハードウェア・レベルで分割されているので,複数の種類のオペレーティング・システムを稼動させることも可能だ。」
「その他の方式って,ハードウェアに対するソフトウェア・パーティショニングですか?」
「そう,ソフトウェア・パーティショニングは,実際にはオペレーティング・システムのリソース管理機能と考えることができる。つまり,特定のアプリケーションやアプリケーションのグループに対して,ポリシーに基づいてシステム・リソースを正確に割り当てていく機能なんだ。この場合は,ポリシーを動的に変更したり,直接指示を与えることによって,リソースの割り当てを非常に柔軟に行うことができるが,全体が 1 つのオペレーティング・システムで実行されているので,障害がシステム全体に波及することになる。このように,ハードウェア・パーティショニングとソフトウェア・パーティショニングでは,リソース割り当ての柔軟性とシステム全体の信頼性の間でトレード・オフがあるんだ。」
「このトレード・オフを解消するために,OpenVMS が提供しているのが,Galaxy だ。Galaxy では,ハードウェアやソフトウェアのレベルではなく,ファームウェア・レベルでマシンを分割する。従って,Galaxy の場合は,1 つのパーティションに割り当てられたシステム・リソースを,他のパーティションへアプリケーション実行中に再割り当てすることができる。しかも,各パーティションでは,独立したオペレーティング・システムが稼動しているので,1 つのパーティションの障害が,他のパーティションに波及することを避けることができる。」
「つまり Galaxy は,ハードウェア・パーティショニングとソフトウェア・パーティショニングの良いとこ取りをしているわけですね。」
「そのとおりだね。更に面白いのは,Galaxy で分割したパーティション同士をクラスタ・メンバとして,1 台のマシンでクラスタ・システムを構築することができる。しかも,そのときには,Galaxy が提供する共有メモリをインターコネクトに利用できるということだ。つまりインターコネクトのパフォーマンスがシステム・バスのレベルになるわけで,非常に高速なクラスタ通信が実現できる。」
「 Galaxy とクラスタで,先進的な大規模システムの構築が可能になるわけですね。」
「さて,21 世紀の OpenVMS を締めくくるためには,IPF サポートに触れないわけにはいかないだろう。」
「確か Alpha からインテルの Itanium アーキテクチャへ鞍替えするんですよね。」
「そういわれると心外だね。まず,Alpha がすぐになくなるわけじゃない。次世代の Alpha チップ,Alpha 21364 は既に学会でも発表され,システムもまもなくリリースされることになっている。それに,Alpha の設計チームはインテルへ移籍して,Alpha が培ったさまざまな高速化技術はIPFへ引き継がれることになる。」
「 Alpha がすぐなくなるわけではないんですね。」
「もちろんだよ,特にハイエンドの大規模サーバとして,Alpha システムに匹敵するものを提供するには,それなりの時間が必要だろう。今,ここにあるシステムとしては,やはり Alpha システムが最高のシステムの1つと言えるだろう。」
「それじゃ,IPF 版の OpenVMS は,まだまだ先の話なんですね。」
「システムやアプリケーションの移行には,相当な時間がかかる。そのため,OpenVMS の IPF ポーティングは既に開始されていて,着々と進行しているようだ。少なくとも評価用の IPF 版 OpenVMS はそんなに遠くない将来に提供されるだろう。」
「アプリケーションの開発環境やシステム管理ツールのポーティングはどうですか?」
「うん,オペレーティング・システムと平行して,ポーティングのプロジェクトが進められているようだ。ほとんどのツールは,IPFでも利用できると考えていいだろう。その他,アプリケーションのマイグレーションに必要なさまざまなツールも提供されることになっている。」
「つまり,IPF への対応は万全ということですね。」
「そういうことだね。しかし,最も重要なことは,IPF のサポートによって,OpenVMS の利用環境が一気に拡大される可能性があるということだ。デスクトップやノート・サイズのマシンで,OpenVMS が自由に利用できるようになれば,OpenVMS も学びがいがあるってもんだろ。」
「早くそうなるといいですね。」
「その日のためにも,今から勉強しておくことだね。それではいよいよ,第 2 章 から OpenVMS を拡張して,日本語機能を追加した,日本語 OpenVMS のオペレーションについて紹介していこう。」
前へ | 次へ | 目次 | 索引 |