我所采用的內存管理思想是鏈表管理思想,內存分配方案是最佳適應方案(best fit)。其主要的數據結構為
struct node
{
char* p
int memosize
int flag
struct node* next
}
這是一個鏈表的結點的數據結構,用它來管理內存的分配與回收。P 表示所指的分配的內存的首地址,memosize 表示分配的內存塊的大小,flag 為一個標志量,表示內存塊是否被占用。用 1 和 0 來表示被占用和不被占用。next 表示下一個結點的首地址。
內存管理包括一個分配內存的mm_request(unsigned int)函數,一個初始化所要管理的內存的mm_init()函數,一個空閑列表排序函數sort(),一個釋放內存的mm_release(void* )函數和一個判斷內存是否被占用的IsFree(int)函數。
標簽:
內存管理
上傳時間:
2016-07-06
上傳用戶:qunquan