スポンサーリンク

【応用情報技術者試験】プロセスとスレッドを5分で理解!

「プロセスとスレッドの違いがよく分からない…」
応用情報技術者試験でも超頻出のテーマですが、初学者がかなりつまずきやすい分野です。

この記事では、

  • プロセスとは?
  • スレッドとは?
  • 違いは?
  • 試験ではどう出る?

を5分で理解できるように解説します!


まず結論

超簡単にいうと…

用語イメージ
プロセス実行中のアプリ
スレッドその中で動く作業単位

日常例で理解しよう

レストランで例えると👇

用語
プロセスレストラン1店舗
スレッド店員それぞれの作業

例えば…

レストラン(プロセス)

  • 注文受付
  • 調理
  • 配膳
  • 会計

など複数の仕事があります。


店員(スレッド)

それぞれの作業を担当します。

  • Aさん → 注文受付
  • Bさん → 調理
  • Cさん → 配膳

つまり、

「1つのプロセスの中で複数のスレッドが動く」

ということ!


プロセスとは?

実行中のプログラム

例えばPCで:

  • ブラウザ
  • Excel
  • ゲーム

を開いているとします。

この“実行中の状態”がプロセスです。


スレッドとは?

プロセス内の処理単位

例えばブラウザでは:

  • 動画再生
  • 通信
  • 画面表示

を同時に動かしています。

この個々の処理がスレッドです。


マルチスレッドとは?

複数のスレッドを同時実行すること

例えば:

  • 音楽を再生しながら
  • ダウンロードする

これができるのはマルチスレッドのおかげ!


プロセスとスレッドの違い

比較プロセススレッド
役割アプリ全体処理単位
メモリ独立共有
作成コスト重い軽い
影響範囲他へ影響しにくい同一プロセスへ影響

「メモリ共有」が超重要!

スレッドは同じメモリを共有します。

つまり👇

  • データ共有が高速
  • ただし競合しやすい

競合とは?

例えば:

2つのスレッドが同時に同じデータを書き換えると…

データが壊れる!

これを防ぐために:

  • 排他制御
  • セマフォ
  • ミューテックス

などが必要になります。

ここは応用情報でも超頻出!


試験ではどう出る?

よく出るポイント👇

頻出①

「プロセスは独立したメモリ空間を持つ」

→ 正しい


頻出②

「スレッドはプロセス内で資源を共有する」

→ 正しい


頻出③

「スレッドは生成コストが小さい」

→ 正しい


よくあるひっかけ

「プロセス間はメモリ共有する」

→ 基本しない!

ここ狙われやすい。


1分で復習!

プロセス

  • 実行中アプリ
  • 独立したメモリ
  • 重い

スレッド

  • 処理単位
  • メモリ共有
  • 軽い

試験対策ポイント

応用情報では特に👇

  • 排他制御
  • デッドロック
  • マルチタスク
  • CPUスケジューリング

と絡めて出題されやすい!

セットで理解するとかなり強いです。


練習問題

問題

スレッドの特徴として適切なものはどれか。

プロセスごとに完全に独立したメモリ空間を持つ

生成や切替えのオーバーヘッドが大きい

同一プロセス内で資源を共有する

複数同時実行できない


解答

正解:ウ

解説

スレッドは同一プロセス内でメモリや資源を共有します。

そのため高速に動作できますが、排他制御が必要になります。


まとめ

プロセス

  • 実行中アプリ
  • 独立して動く

スレッド

  • プロセス内の作業単位
  • 資源共有する

まずは、

「プロセス=アプリ」

「スレッド=作業担当」

で覚えるとかなり理解しやすい!


知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…

まずは無料でキャリア相談

コメント