Distributed Component Object Model Distributed Component Object Modelの概要

Distributed Component Object Model

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2015/10/03 08:41 UTC 版)

概要

DCOM は当初 "Network OLE" と呼ばれ、マイクロソフトCOMを拡張したものであり、マイクロソフトの COM+ サーバ基盤上での通信基盤となっていた。その後、.NET Framework の登場とともに廃れていった。

頭に "D" と付いたのは、DCE/RPC (正確に言えば、DCE/RPC をマイクロソフトが拡張した MSRPC)を採用したことからである。

COM から DCOM への拡張では以下の問題を解決しようとした:

  • マーシャリング - リモートのメソッド呼び出しでのシリアライズ
  • 分散ガベージコレクション - 例えば、クライアントプロセスが壊れたり、ネットワーク接続が失われたとき、インタフェースのクライアントが保持する参照が解放されることを保証する。

これらを解決するため、DCOM の基盤となる RPC 機構としてDCE/RPCが使われた。DCE/RPCでは、マーシャリングやメモリ解放の責任について厳密な規則が規定されていた。

DCOM は CORBA と対抗する規格であった。これらの技術は、インターネット上でのコードとサービスの再利用のためのモデルとなると考えられていた。しかし、これらの技術をファイアウォール上で利用する際の困難さや、セキュリティの確保されていないマシン上で使用する際の問題のため、HTTP とウェブブラウザの組合せがこれらの技術に勝利した。マイクロソフトは "ncacn_http" (Network Computing Architecture, Connection-based, over HTTP) と呼ばれるHTTPトランスポートを DCE/RPC に追加することでこの流れを止めようとして失敗した(後にこの手法は HTTP 上で Exchange 2003 接続をサポートするために復活した)。

派生のバージョンと実装

The Open Group は COMsource という DCOM 実装を開発した。このソースコードは The Open Group から入手可能であり、完全な文書も付属している。この文書によれば、COMsource のソースはWindows NT 4.0 のソースコードから直接持ってきたものであり、Windows NT Registry Service のソースコードもそれに含まれている。

WineのチームもDCOMを実装している。バイナリ互換性を確保する目的であり、DCOM をネットワーク上で使用するためではない。マイクロソフトのAPIを通してNDR(Network Data Representation)を実装するに留まっているが、可能な限り MSRPC と互換性を保とうとしている。

j-Interop は、Java上での MSRPC のオープンソース(LGPL)実装であり、DCOMサーバとやり取りするDCOMクライアントをJavaで作成することができる。

関連項目






「Distributed Component Object Model」の続きの解説一覧




固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Distributed Component Object Model」の関連用語

Distributed Component Object Modelのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Distributed Component Object Modelのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのDistributed Component Object Model (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS