最終更新日:2026年7月25日
fe fe-technology computer-system programming
まず結論
OSにおけるAPIとは、アプリケーションから、OSが用意している機能を利用するための仕組みです。
基本情報技術者試験では、APIは アプリケーションがOSの機能を呼び出すための窓口 と考えると判断しやすいです。
ポイントは、アプリケーションがハードウェアを直接操作するのではなく、OSが提供する機能を呼び出すところです。
直感的な説明
APIは、アプリケーションからOSへお願いするための受付窓口 のようなものです。
例えば、アプリケーションがファイルを読みたいとします。
アプリケーションがディスクを直接細かく操作するのではなく、OSに対して「このファイルを読んでください」と依頼します。
アプリケーション
↓ APIで呼び出す
OSの機能
↓ 必要に応じてハードウェアを操作
ディスク・画面・プリンタなど
このとき、アプリケーションとOSの間で、どのように呼び出すかを決めている仕組みがAPIです。
英語では、APIは Application Programming Interface の略です。
interface は「間をつなぐ接点」という意味で考えると分かりやすいです。
定義・仕組み
APIは、あるソフトウェアの機能を、別のプログラムから利用できるようにするための呼び出し方法や仕様です。
OSにおけるAPIでは、OSが持つ機能をアプリケーションから利用できるようにします。
| OSが提供する機能の例 | アプリケーションから見た使い方 |
|---|---|
| ファイル操作 | ファイルを開く、読む、書く |
| 画面表示 | ウィンドウを表示する、文字や画像を描く |
| 入出力 | キーボードやマウスの入力を受け取る |
| 通信 | ネットワーク通信を行う |
| プリンタ制御 | 印刷を依頼する |
重要なのは、APIは ハードウェアそのものを直接操作する仕組みではない という点です。
ハードウェアを実際に制御する部分には、デバイスドライバなどが関係します。
APIは、アプリケーションがOSの機能を使うための入り口です。
このテーマは、基本情報技術者試験の「オペレーティングシステム」や「ソフトウェア」と関係する内容です。公式の出題範囲やシラバスは、IPA:基本情報技術者試験 から確認できます。
科目Aでどう出る?
科目Aでは、APIの説明として正しいものを選ぶ問題で出題されやすいです。
判断するときは、アプリケーションからOSの機能を利用する という表現を探します。
| 選択肢の表現 | 判断 |
|---|---|
| アプリケーションからOSの機能を利用する | API |
| OSが用意する機能を呼び出す | API |
| アプリケーションがハードウェアを直接操作する | デバイスドライバ寄りの説明 |
| 複数のアプリケーション間で通信する | プロセス間通信の説明 |
| メニュー項目を統一する | CUAの説明 |
特に、OSが用意する機能を利用する という表現が出たら、APIを選びやすいです。
反対に、ハードウェアを直接操作する、アプリ同士が通信する、画面やメニューの使い勝手を統一する、といった説明はAPIそのものではありません。
どんな場面で使う?
プログラムやシステムの説明文を読むときに、どの層がどの層の機能を使っているか を整理するのに役立ちます。
例えば、次のように見ると読みやすくなります。
利用者
↓
アプリケーション
↓ API
OS
↓
ハードウェア
この図の中で、APIはアプリケーションとOSの間にあります。
そのため、問題文で「アプリケーションからOSの機能を呼び出す」とあればAPI、
「OSがハードウェアを制御する」とあればデバイスドライバ寄り、と切り分けられます。
問題文では、用語を丸暗記するよりも、どの間をつなぐ仕組みか を意識すると読み間違いが減ります。
よくある誤解・混同
APIでよくある誤解は、何でも外部とつなぐ仕組みならAPI と考えてしまうことです。
| 誤解 | 正しい理解 |
|---|---|
| APIはアプリがハードウェアを直接操作する仕組み | OSの機能を利用するための呼び出し口 |
| APIはアプリ同士の通信だけを指す | OS機能や外部サービスなど、機能を使うための仕様を指す |
| APIは画面デザインを統一する仕組み | 画面やメニューの統一はCUAなどの考え方 |
| APIとデバイスドライバは同じ | ドライバはハードウェア制御に関係する |
| APIは利用者向けの操作画面 | プログラムから機能を呼び出すための接点 |
試験では、次のように切り分けると楽です。
アプリ → OS機能を使う:API
OS → ハードウェアを制御:デバイスドライバ
アプリ ↔ アプリで通信:プロセス間通信
利用者向けの操作性を統一:CUA
APIは、アプリケーションから見た「OS機能への入口」と考えると、選択肢を切りやすくなります。
まとめ(試験直前用)
- OSにおけるAPIは、アプリケーションからOSの機能を利用するための仕組み
- APIは、Application Programming Interface の略
- 「アプリケーションがハードウェアを直接操作する」はAPIではない
- ハードウェア制御はデバイスドライバと切り分ける
- 「どの層とどの層をつなぐか」で判断すると迷いにくい