-1
我修改了slob.c,以便它收集最近100個小列表分配的統計信息。我做了必要的編輯以確保使用SLOB。使用malloc()測試slob.c()
我正在運行一個測試程序,調用大小爲20個字節的malloc()大約10,000或100,000次。
但是我的SLOB測試結果在測試程序運行後立即聲明平均聲明的大小爲140字節(當我期待它至少接近20字節時)。
我做錯了什麼,有沒有一種方法來準確測試SLOB?
我很確定我的數據收集是準確的,因爲我有幾位教授爲我檢查了它。這是我目前的測試程序:
int main()
{
char * a ;
int i ;
for(i = 0; i < 1000000; i++)
{
a = (char*) malloc(20*sizeof(char)) ;
if(a == NULL) printf("NULL\n") ;
}
//Here I print the system call resulting stats for memory claimed and free memory
這是內核代碼還是用戶代碼?如果是用戶代碼,你用什麼調用來指定內存分配策略? – 2015-04-03 08:07:14