オープンシステム (コンピュータ)
オープンシステム(Open System、オープン系)は、コンピュータの世界でオープン標準に準拠したソフトウェアや、それを使用しているコンピュータのこと。
主に以下の2つの用法で使用されている。
UNIXおよびUnix系の呼称 - 世界的な用法。主にソフトウェア上の用語。当記事で説明。
分散システムのこと - 1990年代以降の日本のみで主流の用法。ハードウェア面を指す場合も多く、本来プロプライエタリなWindowsなども含む。世界的には通用しない。当記事の日本の特殊事情を参照。
オープンシステムは相互運用性、移植性、オープン標準などを持ったコンピュータシステムのことである。この用語は、1980年代前半より、当時のメインフレームやミニコンピュータなどと比較し、主にUNIX(およびUnix系])を指して使われた。
古いレガシーと呼ばれるシステムに対し、UNIXは標準化されたプログラミング・インターフェースを持ち、相互運用性が高く、サードパーティーからの各種のハードウェアやソフトウェアが使用できた。標準化団体にはThe Open Groupなどがある。
しかし現在ではレガシーと呼ばれたシステムも各種のオープン標準を取り入れ、逆に商用UNIXも細部は各ベンダーによる相違点が多いなど、単純な分類は困難になっている。
→ 詳細は Open System(英語)を参照
なおMicrosoft Windowsは、マイクロソフトによる独自仕様(プロプライエタリ)のオペレーティングシステムなため、オープンシステムとは呼ばれない。
→ 詳細は 日本の特殊事情 を参照
1980年代までの日本では、メインフレームやオフィスコンピュータなど、各メーカー独自(プロプライエタリ)のハードウェアおよびソフトウェアが主流であった。その反動もあり、1990年代のダウンサイジングの時期に普及したパーソナルコンピュータやワークステーション、サーバなどのシステムを総称して「オープンシステム」と呼ぶようになった。例には「日経オープンシステム」などの雑誌名がある。また日本では、メインフレームに関わる技術や技術者を「ホスト系」、オープンシステムに関わる技術や技術者を「オープン系」とも呼ぶ。
ただし、これらのシステムは世界的には「分散システム」と呼ばれているカテゴリーで、世界的には1970年代頃から共存していたものであり、実際にはプロプライエタリな製品も多数含まれており、日本の用法は世界的には通用しない、とも考えられているようだが、コンピュータ科学で普通に分散システムとされるものとも違うため、よくわからない。
大幅な価格低下・性能向上により、従来メインフレームで行っていた大規模なシステムも「オープンシステム」で構築した方が価格・性能の両面で有利になるケースが増えた。更には金融機関の勘定系システムなど、従来はメインフレームの領域とされてきたミッションクリティカルな利用局面でもオープンシステムの採用は増えている。
→ 詳細はダウンサイジングも参照
1990年代前半には、この「オープンシステム」という言葉は、「ネットワーク」、「ダウンサイジング」、「マルチメディア」の3語とセットでその頭文字をとって「ネオダマ」と呼ばれ、コンピュータ業界のキャッチフレーズとなっていた。更には「メインフレームなどは高価で時代遅れであり、いずれは全てのシステムをオープンシステムに移行すべき」との論調がマスコミでも大多数となった。
なお、オープンシステムは、1社のみのハードウェアおよびソフトウェアで構成される事も多いホスト系システムと異なり、マルチベンダとなる場合が多いため、独立系のシステム会社が大きなシステムを受注・構築することを容易にした。また、様々なベンダのソフトウェア・ハードウェアを統合して構築することをシステムインテグレーションと呼び、その事業者のことをシステムインテグレーター(SIer)と呼ぶ。
1990年代に日本のマスコミやIT業界で広く語られたイメージには以下がある。
しかし上記イメージに対しては、疑問(反論)もなされている。
そもそも「オープンシステム」の定義があいまいである。
コンピュータの分類や普及時期で、特定の種類を「オープンシステム」と呼ぶのは必ずしも実態と合わないし、日本以外では通用しない。
コストはTCOで考えるべきで、将来性については一概に言えない。
また各OSのオープン標準サポートも程度問題である。Windowsはマイクロソフト独自仕様のOSであるし、商用UNIXもベンダー独自性がある。
DBMS、開発言語、効率性、ユーザインタフェースなどの選択は用途次第である。
たとえばユーザインタフェースならエンドユーザーにはGUI、システム管理者にはCUI、などと使い分けることもできる。
そして現代ではCPUのRISCとCISCの分類の重要性は低くなり、ネットワークも大半がTCP/IPになっている。
なお、日本以外では通常、メインフレームの対義語は分散システム (distributed system) やミッドレンジ (midrange) などで、それぞれオープンか否かは別問題である。これは日本以外では従来より、メインフレーム上のUNIXやC、逆に小型だが独自のミニコンピュータなどが広く使われており、ハードウェア(機種)とソフトウェア(オープンシステムかどうか)は分けて考えていたためと考えられる。
日本ではベンダー(メーカー)の選択肢や普及時期(ダウンサイジング)、日本以外ではソフトウェアの歴史や機能の観点で、呼んでいるとも考えられる。
「オープンシステム」や「オープン」は、そもそも厳密な用語ではなく、その範囲や内容は立場や視点により異なることに注意する必要がある。極論すれば「広く標準化されているため、仕様が統一されていて、どの製品でも差異が無い」という意味でも、「全ての人に自由なため、仕様も多様性があり、選択肢が広い」という正反対の意味でも使われている。
一般論として「オープン」とは、以下を組み合わせた意味で使われる場合が多い。
標準化の結果として相互運用性や移植性が高い(相互に互換性が高い)
多数のベンダーが製造販売している(更には、誰でも製造販売できる)
仕様が公開されている(更には、仕様書やソースコードも公開されている)
ライセンス費用が低い(更には、無償である)
業界標準を多数取り入れている(更には、標準化団体に参加している)
ユーザーが修正することができる(更には、再配布できる)
例として以下のような説明も可能であり、同じものでも「オープン」かどうかは立場・観点によっても変わる。
Windowsは、ハードウェアベンダーの選択肢が広く、各種の標準を採用した面ではオープンである。しかしOS自体は1社独占の独自仕様であり、歴史的に業界標準を遵守していない場合も多い。
UNIXは、初期にはソースコードが公開され、多数のベンダーから提供され、標準化団体もあり、インターネット標準の元祖という面ではオープンである。しかし各ベンダーによる差異もあり、ユーザーから見ると必ずしも「オープン(相互運用性、移植性、接続性がある)」ではない。
メインフレームは、初期には仕様やソースコードが公開され多数の互換機が存在し、上位互換を重視し、各種の標準化を採用した面では元祖オープンである。しかし現在では特定ベンダーからしか提供されず、特に独自OSは歴史的に多数の独自性を引き継いでいる。
オープンソースは、開発・利用・修正などのユーザーの自由度が広い面では非常にオープンである。しかし多数のバージョンに枝分かれした場合は、技術力の低いユーザーから見れば、必ずしも「オープン(相互に互換性、移植性、接続性がある)」ではない。
上記と重複するが「オープン」や「オープンシステム」の用法では、現在は以下も議論となっている。
オープンソースが広く普及した現在、Windowsや商用UNIXは「オープン」と呼ぶべきか
携帯情報端末など独自性が強いものも「オープン」と呼ぶべきか
メインフレームもUNIXやオープン標準をサポートした現在、何を「オープン」と呼ぶべきか
コストパフォーマンスは、陳腐化速度や運用管理を含めたTCOで比較すべきではないのか
インターネットやクラウドコンピューティングが進むと、コンピュータの種類の比較は重要性が下がり、更にコンピュータ内部はオープン標準を使う必要性も下がるのではないか
通信回線を含め閉鎖性の逆で、他を介在させるセクリティーの余地を残す