---
title: "スプーリングとは？プリンター待ちを減らす一時保存の仕組み【FE試験】"
description: "基本情報技術者試験で問われやすいスプーリングについて、プリンターなどの低速な入出力装置へのデータを、いったん高速な磁気ディスクなどに保存してから出力する仕組みとして整理します。バッファ、キュー、スケジューリング、プロキシとの違いも確認します。"
last_modified_at: "2026-07-06"
canonical_url: "https://stemtazoo.github.io/fe/spooling/"
section: "fe"
---

## まず結論

スプーリングとは、プリンターなどの **低速な入出力装置** に送るデータを、いったん **高速な磁気ディスクなど** に保存しておき、あとで目的の装置に出力する仕組みです。

FE試験では、次のセットで覚えると判断しやすいです。

- **プリンターなどの低速装置**
- **出力データをいったん保存**
- **高速な磁気ディスクなどを使う**
- **あとで目的の装置に出力**

つまり、スプーリングは

> 遅い装置を待たずに済むように、いったんためておく仕組み

です。

---

## 直感的な説明

プリンターは、CPUや主記憶に比べるとかなり低速です。

もしアプリケーションが印刷のたびに、プリンターの印刷完了をずっと待つと、ほかの処理が進みにくくなります。

そこで、印刷データをいったんディスクなどに保存します。

```text
アプリケーション
↓
いったんディスクに保存
↓
プリンターが順番に印刷
```

こうすると、アプリケーションはプリンターの動作完了を待ち続けずに、次の処理へ進みやすくなります。

---

## 定義・仕組み

### スプーリングの意味

スプーリングは、低速な入出力装置とCPUの速度差を吸収するための仕組みです。

代表例はプリンターです。

プリンターに直接データを送り、印刷が終わるまで待つのではなく、印刷データをいったん磁気ディスクなどに保存します。

その後、プリンターの処理速度に合わせて、保存したデータを順番に出力します。

---

### なぜ必要？

CPUやアプリケーションの処理速度に比べて、プリンターなどの入出力装置は低速です。

そのため、低速な装置の完了を待つと、システム全体の効率が下がります。

スプーリングを使うと、

- アプリケーションは出力データを渡したら先に進みやすい
- プリンターは自分の速度で順番に処理できる
- CPUの待ち時間を減らしやすい

という効果があります。

---

### スプーリングの流れ

印刷を例にすると、流れは次のようになります。

```text
1. アプリケーションが印刷データを作る
2. 印刷データをいったんディスクに保存する
3. スプーリング機能が順番を管理する
4. プリンターへデータを送る
5. プリンターが印刷する
```

FE試験では、細かい実装よりも、

> 低速装置へのデータを、いったん高速な記憶装置に保存する

という考え方を押さえます。

---

## どんな場面で使う？

### プリンターへの出力

一番よく出る例は、プリンターです。

印刷データを直接プリンターに送り続けるのではなく、いったんディスクに保存しておきます。

その後、プリンターが順番に印刷します。

問題文に、

> プリンター  
> 低速な装置  
> 磁気ディスクに格納  
> その後に出力

のような表現があれば、スプーリングを疑います。

---

### 低速な入出力装置とのやり取り

スプーリングは、プリンター以外でも、CPUとの速度差が大きい入出力装置との間で考えられます。

大事なのは、

> 低速装置へ直接待ちながら出すのではなく、いったん保存してから出す

という点です。

---

## よくある誤解・混同

### ❌ キーボード入力を主記憶のキューに保存すること

これは、入力バッファやメッセージキューに近い説明です。

「いったん保存」という言葉は似ていますが、スプーリングの典型例ではありません。

スプーリングでは、プリンターなどの低速な入出力装置と、磁気ディスクなどへの一時保存がポイントです。

---

### ❌ ジョブの実行順序を決めること

これはスケジューリングの説明です。

スケジューリングは、投入されたジョブやタスクを、どの順番で実行するか決める仕組みです。

スプーリングは、低速な入出力装置とのデータの受け渡しを助ける仕組みです。

---

### ❌ 代理の装置へ通信データを送ること

これはプロキシの説明です。

プロキシは、通信の代理役です。

通信相手へ直接送らず、代理サーバや代理装置を経由するようなイメージです。

スプーリングとは別です。

---

### ❌ ただの保存なら何でもスプーリング

これも注意です。

スプーリングは、単なる保存ではありません。

低速な入出力装置との速度差を吸収するために、出力データなどを一時的に保存する仕組みです。

---

## 確認問題（FE試験対策）

スプーリングの説明として、最も適切なものはどれか。

- ア. キーボードからの入力データを主記憶のキューにいったん保存しておく。
- イ. システムに投入されたジョブの実行順序を、その特性や優先順位に応じて決定する。
- ウ. 通信データを直接通信相手の装置に送らず、あらかじめ登録しておいた代理の装置に送る。
- エ. プリンターなどの低速な装置への出力データをいったん高速な磁気ディスクに格納しておき、その後に目的の装置に出力する。

<details markdown="1">
<summary>▶ クリックして答えと解説を見る（ここを開く）</summary>

**正解：エ**

### 解説

- ア：不適切です。キーボード入力を主記憶のキューに保存する説明であり、スプーリングの典型的な説明ではありません。
- イ：不適切です。ジョブの実行順序を決定するのは、スケジューリングの説明です。
- ウ：不適切です。代理の装置を経由して通信するのは、プロキシの説明です。
- エ：正解です。低速な装置への出力データをいったん高速な磁気ディスクに保存し、あとで目的の装置に出力するのがスプーリングです。

👉 判断ポイント  
**低速装置への出力を、いったん高速な記憶装置に保存してから出力する** なら、スプーリングです。

</details>

---

## まとめ（試験直前用）

- **スプーリング**：低速装置への出力を、いったん高速な記憶装置に保存する仕組み
- 代表例は **プリンター**
- **スケジューリング**：ジョブやタスクの実行順序を決める
- **プロキシ**：通信の代理役
- **キュー・バッファ**：データを一時的にためる仕組みだが、スプーリングとは文脈が違う

FE試験では、

> プリンター・低速装置・磁気ディスク・あとで出力

が出てきたら、**スプーリング** を選びます。
