差分
スケジュリングをスケジューリングに修正
=== カーネル空間とユーザ空間 ===
[[オペレーティングシステムとは何か#何をさしてオペレーティングシステムと呼ぶのか|何をさしてオペレーティングシステムと呼ぶのか]]の議論でもでも少し取り上げましたが、の議論でも少し取り上げましたが、
いろいろな切口でカーネルを眺めることはできます。ここでは、最初はわかりやすいであろう「プログラムが動作する」という切口から考えてみます。
ユーザ空間は、ユーザに割り当てられる計算リソースで、実行しているプログラムが直接アクセス可能なリソースです。
一方、カーネル空間はユーザが直接アクセスできない空間です。システムコール(UNIXのカーネルAPI) を呼ぶことや、
あるいは/sys/以下のファイルのようにファイルの形でカーネルへのインタフェースを介してカーネルの機能を利用できる形にしています。ユーザからは直接カーネル空間を操作することはできません。Kernel(核)という言葉は元々は堅い殻に守られた種の意味ですが、この意味のようにユーザ側から見ると、カーネル空間は堅い殻に守られたオペレーティングシステム内部というように見えます。以下のファイルのようにファイルの形でカーネルへのインタフェースを介してカーネルの機能を利用できる形にしています。ユーザからは直接カーネル空間を操作することはできません。Kernel(核)という言葉は元々は堅い殻に守られた[https://en.wikipedia.org/wiki/Drupe ''種の意味'']ですが、この意味のようにユーザ側から見ると、カーネル空間は堅い殻に守られたオペレーティングシステム内部というように見えます。
[[File:User-kernel-mode-2.png|thumb|left|300px|write(2)実行時のタイムライン]]
===== スケジュリングの種類 スケジューリングの種類 =====
* SCHED_FIFO: First-In-First-Out
2.6.12ではあたらしくSCHED_BATCHのスケジュールが加わり、
2.6.23ではCFS( Completely Fair Scheduler )スケジューラ