2.3. 動的リスト構造

オペレーティングシステムは、システムの各プロセッサー上で情報セットを必要とします。Red Hat Enterprise Linux 5 では、この情報セットはメモリの固定サイズアレイに割り当てられました。各プロセッサー上の情報は、このアレイにインデックス化することで取得されました。この方法は迅速かつ容易で、比較的プロセッサーが少ないシステムには簡単なものでした。
しかし、システムのプロセッサー数が増加するにつれ、この方法は多大なオーバーヘッドを生み出します。メモリの固定サイズアレイは単一の共有リソースなので、多くのプロセッサーが同時にアクセスしようとすると、ボトルネックになってしまいます。
この問題に対処するため、Red Hat Enterprise Linux 6 ではプロセッサー情報に 動的リスト構造 を使います。これにより、プロセッサー情報用のアレイが動的に割り当てられるようになります。システムにプロセッサーが 8 つしかない場合、リストには 8 つのエントリしか作成されません。プロセッサーが 2048 個あれば、エントリは 2048 個作成されます。
動的リスト構造では、よりきめの細かいロッキングが可能になります。例えば、 プロセッサー 6、72、183、657、931、1546 で同時に情報の更新が必要な場合、より多くの並列処理で実行可能です。このような状況は当然、小型システムよりもより大型の高パフォーマンスシステムでより多く発生します。