malloclab的一些思路

2021-10-18 08:53:23 字數 881 閱讀 4237

首先是參考書上第598-602頁**,但是照搬書上的**只有六十多分(預設的也有七十多)。

注意到書上p594頁說,下一次適配很可能比首次適配記憶體利用率高,尤其是當鍊錶前面布滿了許多小碎片的時候,但在有些情況下,下一次適配不及首次適配,書上的**採用的是首次適配,因此嘗試下一次適配。

兩者最大的差別就在於find_fit函式,首先給出書上的首次適配函式:

//首次適配,書本p619答案

static

void

*find_fit

(size_t size)

}return

null

;}

static

char

*pre_listp;

這樣就可以重寫find_fit函式了:

//下一次適配

static

void

*find_fit

(size_t asize)

bp = heap_listp;

//如果後面沒找到,可能在前面

while

(bp != pre_listp)

return

null

;}

這樣測試出來能有80多分,當然,最佳適配理論上比前兩者都好,但事實上只有七十多分,還不如下一次適配,不知道什麼原因,有沒有大佬告訴一下。

static

void

*find_fit

(size_t asize)}if

(flag)

return ans;

return

null

;}

shelllab的一些思路

首先是eval函式 void eval char cmdline if bg addjob jobs,pid,fg,cmdline else addjob jobs,pid,bg,cmdline sigprocmask sig unblock,mask,null 如果不阻塞sigchld訊號,可能會...

一些設計思路

智慧型裝置 1.s2c 介面,在 裡新增 system cmd 然後就可以進行伺服器遠端除錯啦。這樣做可以縮短終端裝置開發時間 智慧型裝置往往要求是終端提供穩定可靠的介面給伺服器統一呼叫,因為終端公升級太麻煩啦 2.同樣的需要,終端功能夠強壯,伺服器進行控制。尤其是前期,強制公升級很需要 3.昨天討...

C 的一些基本的思路

本博文為侯捷老師c 物件導向高階開發的課程筆記 一種基本的概念是我們學習c 不止要學習他們的語言,還要學習c 的標準庫 c和c 的不同 c語言在這設計程式的時候會準備一些資料和函式,根據資料的型別建立除一些變數,函式來處理這些變數,由於語言沒有提供足夠的關鍵字,所以這些資料一定是全域性的,這樣對程式...