利用者:Bluebox/Sandbox
表示
- ナノカーネル(nanokernel)はオペレーティングシステムのカーネルの設計、実装思想のひとつ。マイクロカーネルよりもさらにコア部分の機能を限定し、軽量化を計ったものをこう呼ぶことがある。
- NanoKernelはMac OSの8.6から9.2.2まで採用されていたカーネル。マルチプロセッシングに対応し、プリエンプティブマルチタスクなどの機能を備える。詳細を以下に述べる。
概要
[編集]NanoKernelとはMac OS 8.6から採用されたカーネルで、それまでのレガシなカーネルよりもPowerPCに対しての最適化が大幅に進んだ。結果、Mac OS 8.6では省電力化、高速化に成功したとされる。
NanoKernelはMac OSの最下層に位置し、割り込みの処理、MPTaskと呼ばれるネイティブスレッドのスケジューリング、メモリ空間の割り当てと保護、クリティカルセクションの管理などOSの基本的な動作はすべてここで処理される。
実際
[編集]Mac OS X以前のMac OSはよくプリエンプティブマルチタスクや、メモリ保護機能を欠いたOSと言われているが、実はMac OSのコアであるNanoKernelには両機能が備わっている。 実際、NanoKernelはプリエンプティブマルチタスキングカーネルとしてタイムスライシングを行っており、各スレッドはプライオリティに基づきスケジューリングされている。また、NanoKernelが存在、利用するメモリ領域はMMUによって保護されており、NanoKernelのみが動作しているPowerPCのスーパバイザモードからしか読み込み、書き込みともにアクセスできない。