[ホーム] > [間違えやすい類語 IT編一覧] > [プロセスとスレッドの明確な違いを比較表で説明]
(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。
説明 | プロセス | スレッド |
概要 | プログラムが実行された場合に起動されるもの。プログラムを実行すると一つのプロセスが起動される。リソースの割り当てと保護の単位。 | プログラムが複数の処理を行うために起動するもの。例えば「通信処理のスレッド」「画面表示のスレッド」「キー入力受付のスレッド」などマルチスレッドとして複数のスレッドを起動して処理を効率的に行う。CPU処理の単位。 |
処理 | 処理が重い | 処理が軽い |
名前 | 原則は実行した exe の名前 | プロセスが命名する |
コスト | プロセス生成はリソースの観点よりコストがかかる | スレッド作成はコストが安い |
スピード | プロセスとしてプログラムを実行するととても遅い | スレッドとしてプログラムを実行するととても軽い |
メモリ | プロセスは他のプロセスのメモリへはアクセスできない。自分の固有のメモリスペースを持つ。 | 親プロセスと同じメモリを使用する。スレッドは同じプロセスから起動された他のスレッドのメモリにアクセス可能。 |
切り替え(コンテキストスイッチ) | 他のプロセスへの切り替えは時間がかかる | 他のスレッドへの切り替えは早い |
プロセス/スレッドの関係 | プロセスは複数のスレッドを実行することができる | スレッドは一つのプロセスだけに属することができる。 |
切り替え | カーネルレベルで行われる | カーネルレベルあるいはユーザレベルで行われる |
関連リンク:
サービスとプロセスの違いとは
[ホーム] > [間違えやすい類語 IT編一覧]
,