簡単にいうと…
ミドルウェアとは
OSとアプリケーションソフトウェアの中間で働く
プログラムの総称です。
OSの機能拡張や、アプリケーションソフトウェアごとに共通の汎用的機能のパッケージを指します。
詳しくいうと…
種類
ミドルウェアは、OS上で動きつつも、個々のアプリより幅広い機能を提供するプログラムです。
主に以下の種類があります:
・サーバサービス
・デバイスドライバ
・仮想マシン
・通信基盤
・統合運用管理
・クラスタ管理
・トランザクションモニター
・組込みシステムのミドルウェア
1つひとつ見てゆきましょう。
サーバサービス
サーバサービスは、サーバ機能を担うミドルウェアです。
Webブラウザを見させてくれるWebサーバサービスをはじめ、アプリケーションサーバサービス、データベースマネジメントシステム(DBMS)などの種類があります。
デバイスドライバ
デバイスドライバは、コンピュータに接続された周辺機器をOSに制御させてくれるミドルウェアです。
モニターやプリンター、LANカードなどの周辺機器ごとに固有のデバイスドライバがあります。
仮想マシン
仮想マシンは、1つのOS上でさらに複数のコンピュータ・OSを仮想的に動作させるミドルウェアです。
VirtualBoxやVMware、Hyper-vなどの製品があります。
通信基盤
通信基盤は、コンピュータ間・サーバ間の通信に用いられる共通機能を提供するミドルウェアです。
MRI(Message Passing Interface)やCORBA(Common Object Request Broker Architecture)などの規格、またはRPC(Remote Procedure Call)などの技術があります。
統合運用管理
統合運用管理は、システム内のサーバやネットワークの監視、バッチ処理のスケジューリング、リソース配分などを統合して行なうミドルウェアです。
クラスタ管理
クラスタ管理は、メイン系のサーバに障害が生じた際、サブ系のサーバへ自動的に切り替えてくれるミドルウェアです。
トランザクションモニター
トランザクションモニターは、ネットワーク上の通信・処理トランザクションを把握させてくれるミドルウェアです。
組込みシステムのミドルウェア
組込みシステムは、ハードウェア製品ごとにオーダーメイドのプログラムが組み込まれており、リソース節約のため、そのOSは必要最小限の機能しか備えていません。
このため、通常ならOSが提供する機能も、組込みシステムにおいてはOSを拡張するミドルウェアとして分類されます。
ファイルシステム、セキュリティ、GUI、画像処理、音声処理などの拡張機能があります。
以上のようにミドルウェアは、そのサーバ機能・デバイス管理・リソース管理などを通じて、個々のアプリケーションを互いに整合させながら巧みに運用させることを可能にしているのでした。
さらに知りたいなら…
新人エンジニアのためのインフラ入門(2018年)
(←画像クリックでAmazonサイトへ)
目次はこちらのサイトをご覧ください。
つまり…
ミドルウェアとは
OSとアプリケーションソフトウェアの中間で働く
プログラムの総称なわけです。
サーバサービスもミドルウェアに分類されるのか…たしかに、たんなるアプリというには機能と影響が幅広いからのぅ。
歴史のツボっぽくいうと…
- 1959年DBの概念提唱W.C.MaGeeが論文「Generalization: Key to successful electronic data processing」を発表、データ重複の回避とシステム拡張の効率化のために源泉ファイル(source file)という概念を提唱する
- 1964年DBMSの登場アメリカ・General Electric社のC.W.Bachmanらが、最初のDBMS「IDS(Integrated Data Store)」を開発する
- 1970年リレーショナルDBの概念提唱イングランド生まれの計算機科学者E・F・Coddが、論文「大規模共有データバンクのデータ関係モデル」を発表、リレーショナルデータベースの一般理論を提唱する
以降、DBといえばこのリレーショナル型を指すようになる - 1979年リレーショナルDBの登場アメリカ・Relational Software社(現 Oracle社)が、最初のリレーショナルDBMS「Oracle V2」を販売する
- 1991年最初のWebサーバイギリスの計算機科学者ティム・バーナーズ=リーが、最初のWebサーバ&ブラウザ「WorldWideWeb」を公開する
- 1999年Java用アプリサーバの規格Javaで実装されたアプリケーションサーバの標準規格&APIを定めたJava EE(Java Platform, Enterprise Edition)が公開される
<参考文献>(2019/09/21 visited)