
出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」
Linuxオペレーティングシステムに関する記述(CPUの動作モード、システムコールとソフトウェア割込み、仮想メモリとページフォールト、プリエンプション、入出力割込み)のうち最も適切なものを選ぶ問題。
OSの基本動作に関する5つの記述のうち、最も適切なものを選ぶ問題。
① OSの基本: システムコールはソフトウェア割込みでカーネルモードに切り替えてOSを呼ぶ。動作モードを分けるのはシステムを守るため
② ①理由は高速化ではない、③ページフォールト中もCPUは他のプロセスを実行、④時間切れでもCPUを奪われる、⑤割込みは入出力の完了時など
③ ②
アプリケーションがOSの機能を利用するために発行するシステムコールは、ソフトウェア割込み(トラップ)によって、CPUをユーザモードからカーネルモード(特権モード)に切り替え、OSのカーネルの処理を呼び出す。したがって、システムコールが実行されるとソフトウェア割込みが発生するという②が最も適切である。
システムコールは、ソフトウェア割込み(トラップ)でカーネルモードに移行する。ユーザモードとカーネルモードの分離は保護のため。ページフォールト時はプロセスが待ち状態になるが、CPUは他のプロセスに切り替わる。
キーワード: Linux、システムコール、ソフトウェア割込み、特権モード、ページフォールト、プリエンプション、情報工学部門