プリエンプション
Rev.1を表示中。最新版はこちら。
古いUnixでは、システムコールを発行してカーネル内のコードを実行している時は、他のプロセスにコンテキストスイッチすることはない(I/O待ちなどで自分からBlockしない限り)。Linuxなんかだと、configでプリエンプションを有効にしておけば、カーネル内のコードを実行中でもコンテキストスイッチが発生する。これにより、システムのレスポンスの向上が期待できる。
Xnuでもできるみたい。
ASTを使ってTrapを発生させて切替えている?
AST_PREEMPT