ナノカーネル
![]() | この項目では、MacintoshのOSについて説明しています。カーネル設計方針としての「ナノカーネル」については「カーネル」をご覧ください。 |
ナノカーネル(英: NanoKernel)はMacintoshのオペレーティングシステム (OS) であったClassic Mac OSのうち、System 7.1.2からMac OS 9.2.2まで採用されていたカーネル。Mac OS 8.6からはマルチプロセッシングに対応し、プリエンプティブマルチタスクなどの機能を備える。
概要
System 7.1.2から採用されたカーネルで、それまでのカーネルからPowerPCに対して最適化を進める為に採用された。Mac OS 8.6以降では省電力化、高速化に成功したとされる。
nanokernelはClassic Mac OSの最下層に位置し、割り込みの処理、MPTaskと呼ばれるネイティブスレッドのスケジューリング、メモリ空間の割り当てと保護、クリティカルセクションの管理などOSの基本的な動作はすべてここで処理される。
実際
macOS以前のClassic Mac OSはよくプリエンプティブマルチタスクや、メモリ保護機能を欠いたOSと言われているが、実はClassic Mac OSのコアであるナノカーネルには両機能が備わっている。
実際、ナノカーネルはプリエンプティブマルチタスキングカーネルとしてタイムスライシングを行っており、各スレッドはプライオリティに基づきスケジューリングされている。また、ナノカーネルが存在、利用するメモリ領域はMMUによって保護されており、ナノカーネルのみが動作しているPowerPCのスーパバイザモードからしか読み込み、書き込みともにアクセスできない。
出典
- 表示
- 編集