平成30年度春期 エンベデッドシステムスペシャリスト試験 午前II 問7
【問題7】
スレッドとプロセスに関する記述のうち,適切なものはどれか。
スレッドとプロセスは同一のアドレス空間で実行され,スレッドとプロセスの間でコンテキストの切替えが高速に行われる。
スレッドはプロセスのサブルーチンとして,プロセスとは別のアドレス空間で実行される。
同一アドレス空間に含まれている各スレッドは,プロセスと共通のスタックとコンテキストをもつ。
同一アドレス空間に含まれているスレッド間の通信は,プロセス間の通信と比較して効率的に行われる。
【解説】
ア: スレッドとプロセスは同一のアドレス空間で実行され,スレッドとプロセスの間でコンテキストの切替えが高速に行われる。
誤り。スレッドはプロセス内で実行され,同一アドレス空間を共有しますが,スレッドとプロセスの間での切替えは異なる概念です。
イ: スレッドはプロセスのサブルーチンとして,プロセスとは別のアドレス空間で実行される。
誤り。スレッドはプロセス内で実行され,同じアドレス空間を共有します。プロセスとは別のアドレス空間で動作するわけではありません。
ウ: 同一アドレス空間に含まれている各スレッドは,プロセスと共通のスタックとコンテキストをもつ。
誤り。スレッドは同一アドレス空間を共有しますが,各スレッドは独自のスタックを持ちます。一方,ヒープなどの共有リソースを共有します。
エ: 同一アドレス空間に含まれているスレッド間の通信は,プロセス間の通信と比較して効率的に行われる。
正しい。スレッドは同一のアドレス空間を共有するため,スレッド間の通信はプロセス間通信(IPC)と比較してオーバーヘッドが少なく,効率的に行えます。
【答え】
エ: 同一アドレス空間に含まれているスレッド間の通信は,プロセス間の通信と比較して効率的に行われる。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問7