Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

2.3. 動態清單結構

作業系統需要系統上每個處理器的一組資訊。在 RHEL 5 中,這組資訊會分配到固定大小的記憶體陣列。每個處理器的資訊都透過對此陣列的索引而取得。對於處理器不多的系統來說,這方法快速、簡單、且直接。
然而,隨著系統中的記憶體愈來愈多,這方法的負擔就顯著加重。因為固定大小的記憶體陣列是單一、共享的資源,所以當更多處理器同時存取時,就會變成瓶頸。
為了解決這問題,RHEL 6 使用了「動態清單結構」(dynamic list structure)來儲存處理器資訊。這允許處理器資訊所使用的陣列會以動態方式分配:如果系統上只有八個處理器,那麼清單中就只會建立八個項目。如果有 2,048 個處理器,那麼就會建立 2,048 個項目。
動態清單結構也提供了更細緻的鎖定功能。舉例來說,如果處理器 6、72、183、657、931、與 1546 需要同時更新資訊,動態清單結構便可提供更高的同步處理功能。跟小型系統比起來,大型、高效能系統就更有可能會發生這種情形。