模擬內存管理。
申請內存時,若當前結點指示的內存為空且大小相同,則直接將該節點的標志位置成0,并返回該節點的首地址,若當前結點指示的內存空間大于申請的空間,則申請一個新結點插入到當前結點的后面,將當前節點的標志位置成0,內存塊大小改成申請的內存的大小,將新建結點的標志位置成空,大小為原來塊的大小減去當前結點塊的大小。
若申請的內存空間大于當前空結點的塊的大小,則繼續向后查找。
釋放內存時,定義*prev,*prv *prev指向釋放內存塊,prv指向所釋放內存塊的前結點。
若釋放的節點的首地址與當前結點的首地址相同且當前結點不空,將當前結點的標志位置成1,若當前結點的前一結點為空,則合并,若當前結點的后一結點為空,則再合并
標簽:
模擬
內存管理
內存
上傳時間:
2016-08-16
上傳用戶:tzl1975