2011-06-21 linux內存管理

1 頁,區,高速緩存

高速緩存由多個slab組成,slab裏面都包含了許多對象成員。slab通常由一個或多個物理上連續的頁組成。

2 棧

32位和64位體系結構的頁面大小分別是4KB和8KB。

歷史上,每個進程都有兩頁的內核棧。每個進程的調用鏈(調用函數出入口)必須放在自己的內核棧中,中斷處理程序有

自己的棧。

3 高端內存映射

 申請的內存可能沒有邏輯地址(?),必須用相應的函數接口對其進行映射到內核的地址。

4 使用cpu數據的原因

  在smp體系上,使用cpu數據有下面好處

 *  每個處理器訪問每個cpu數據,可以不需要任何鎖。

 *  減少緩存失效。若數據存放在另外的CPU上,那麼存放的CPU需要不斷地刷新數據以保持同步。

 注意:不能在訪問每個CPU數據過程中睡眠。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章