FE EXAM

ミドルウェアの役割(OSとアプリの橋渡し)

OSとアプリケーションの中間に位置し、共通的な機能を提供するソフトウェア。

DIAGRAM
アプリケーション
ミドルウェア
OS
アプリケーション業務システム・Webアプリなど(利用者が使うソフト)販売管理会計在庫管理ミドルウェア共通的な機能を提供してアプリ開発を楽にする橋渡し役DBMSWebサーバアプリサーバMOM(通信)OS(基本ソフトウェア)ハードウェア資源(CPU・メモリ・ディスク)を直接管理CPUメモリディスク機能を呼び出すOS機能を利用
解説

📌
ミドルウェアとは

アプリケーションミドルウェア(中間)OS

ミドルウェアとは、OS(基本ソフトウェア)とアプリケーションの中間(ミドル=真ん中)に位置し、多くのアプリが共通して必要とする機能を提供するソフトウェアのことです。

身近な例で考えると、マンションの管理人さんに似ています。住人(アプリ)が「ゴミ出し」「宅配の受け取り」をいちいち自分でやらず、共通の作業を管理人にお願いするように、データ保存や通信といった「どのアプリでも必要な作業」をミドルウェアにまかせます。

上の図解のように、ミドルウェアはアプリとOSの橋渡し役です。これがあるおかげで、アプリ開発者は毎回ゼロからデータベースや通信の仕組みを作らずに済み、開発がぐっと楽になります。

📌
主な種類

DBMSWebサーバアプリサーバMOM代表的なミドルウェア

ミドルウェアには分野ごとにさまざまな種類があります。代表的なものは次のとおりです。
DBMS:データベース(大量のデータの保管庫)を管理・操作するソフト
Webサーバ:ブラウザからのHTTP要求を受け付けてWebページを返すソフト
アプリケーションサーバ:業務ロジックなどの動的な処理を実行するソフト
トランザクションモニタ:複数の処理を「ひとまとまり」として正しく実行する仕組み
メッセージング(MOM):システム間でデータ(メッセージ)を確実にやり取りするソフト

MOMMessage-Oriented Middleware(メッセージ指向ミドルウェア)の略です。郵便ポストのように、送り手と受け手が同時につながっていなくてもメッセージを預けて確実に届けられるのが特徴です。

📌
OSとの違い

OSハード資源を直接管理する基盤ミドルウェアOSの上で特定分野の共通サービスを提供

OSとミドルウェアは「アプリの土台」という点では似ていますが、役割の階層が違います

OSは、CPU・メモリ・ディスクといったハードウェア資源を直接管理する一番下の基盤です。これに対してミドルウェアは、そのOSの上で動き、データベース管理や通信などの特定分野の共通サービスを提供してアプリ開発を楽にします。

料理にたとえると、OSは「ガスと水道(インフラ)」ミドルウェアは「下ごしらえ済みの食材や調理器具」のような関係です。アプリ(料理人)はインフラを意識せず、用意された道具を使って効率よく目的の料理を作れます。

練習問題

🎯
基本情報技術者 練習問題

Q1.ミドルウェアの説明として最も適切なものはどれか。
A.ハードウェアの資源を直接管理する基盤ソフトウェア
B.OSとアプリケーションの中間に位置し、共通的な機能を提供するソフトウェア
C.利用者が直接操作する業務専用のアプリケーション
D.CPU内部で命令を実行する電子回路
Q2.ミドルウェアに分類されるソフトウェアはどれか。
A.Windows・Linux などの基本ソフトウェア
B.マウスのデバイスドライバ
C.DBMS(データベース管理システム)
D.表計算ソフト
Q3.OSとミドルウェアの違いとして正しいものはどれか。
A.OSは特定分野の共通サービスを、ミドルウェアはハード資源を管理する
B.OSはハード資源を直接管理し、ミドルウェアはOSの上で特定分野の共通サービスを提供する
C.OSとミドルウェアはまったく同じ役割を持つ
D.ミドルウェアはOSがないと動かないがOSはミドルウェアの上で動く

関連コンテンツ