1. 程式人生 > >基於順序搜尋的動態分割槽演算法

基於順序搜尋的動態分割槽演算法

首次適應演算法(first fit ,ff)

要求

空閒鏈遞增的方式連結

工作方式

從鏈首開始查詢,直到找到一個大小能滿足要求的空閒分割槽為止

特點
  1. 優先利用記憶體中低地址部分
  2. 高地址空閒區大,可以給大程式使用
  3. 低地址不斷被分割,形成碎片
  4. 每次從低地址查詢,開銷大

迴圈首次適應演算法(next fit,nf)

解決問題

為了解決 ff 演算法的缺點

特點
  1. 從上一次找到的空閒分割槽的下一個空閒分割槽開始查詢(迴圈)
  2. 缺點是,缺乏大型空閒分割槽

最佳適應演算法(best fit,bf)

要求

按照容量大小的順序形成空閒鏈(從小到大)

特點
  1. “最佳”是指,既能滿足大小,又是一最小的空閒分區劃分,避免大材小用
  2. 缺點是容易形成碎片

最壞適應演算法(worst fit,wf)

要求

按照容量大小的順序形成空閒鏈(從大到小)

特點
  1. 和 bf 演算法相反,wf 演算法是一開始就分配大的空間,這樣便難以形成碎片