3.4.2 カーネルスレッド 連続的ではなく定期的に実行するような処理はカーネルスレッドがバックグラウンドで実行する。 これによりユーザモードコンテキストの動作が妨げられない。 ◆カーネルスレッドとそれ以外のプロセスの違い - 各カーネルスレッドは特定のカーネル関数を実行する。通常のプロセスはシステムコール経由でしか、 カーネル関数を実行できない。 - カーネルスレッドはカーネルモードでしか実行されないが、通常のプロセスはカーネルモードと ユーザモードが交互に入れ替わる。 - PAGE_OFFSET番地以降のリニアアドレスしか実行しない。通常のプロセスは4GB全体を利用する。 ◆カーネルスレッドの生成 kernel_thread() ◆プロセス0 swapperプロセス, start_kernel()関数によりLinuxの初期化時に生成されるカーネルスレッド。 start_kernel()
