2012-10-15 85 views
0

這是一個自由空間表操作系統第一擬合算法

+--------+-------+ 
|address | size | 
| 28 | 11 | 
| 21 | 19 | 
+--------+-------+ 

以下數據進入:11, 5, 7

我需要使用第一擬合算法來在正確的位置的每個數據放置。

我正在做這個對嗎?

(步驟1)11將在地址28被放置在尺寸11

(步驟2)5將通過把19被放置在地址21分爲兩個部分,因此,創建14(新分區)

(步驟3)7將被放置在大小爲14的地址21處(步驟(2)中創建的)

+0

請問哪種操作系統使用這種內存分配? – hsalimi

回答

1

看起來是正確的,除了7長條目不在地址21處,因爲那是5那時候會那樣。這個7字長的條目可能會在地址21 + 5 = 26。而且,如果表格中的搜索按照表格顯示的順序或從較高地址到較低地址進行。另外,最後一步也產生一個新的分區。

如果OTOH,搜索是在相反的方向進行,那麼結果是不同的。

在第二個想法,這一切都看起來不正確。 21 + 19 = 40> 28怎麼樣?或者是這些地址的結尾,而不是免費分區的開始?但是28-11 = 17 < 21.

不計算。

你的任務中有點問題或缺失。