1.
- 随着free的次数增加,空闲列表的元素个数增加,因为不会合并,每次分配内存时,开销也增大,内存碎片增加
2.
- 采用最差匹配策略,空闲列表的元素个数增加了。因为每次选择与请求大小最不接近的块进行分配,因此大概率是分割已有的大块空闲空间,因此空闲列表元素个数一般不会减少,会产生更多碎片
3.
- 不用运行都知道,不需要遍历所有空闲列表的元素,肯定分配内存的速度快了
4.
- 不用运行都知道,如果分配使用的算法需要遍历所有元素,无论空闲列表如何排列,都不会有影响;如果采用首次匹配的话,按照大小排序肯定比按照地址排序要好
5.
- 不用运行都知道,不合并很可能到后期满足不了大空间的请求,列表的排序是否重要还是取决于用什么分配算法
6.
- P参数指出一个operation是分配的概率,如果取100,那么操作全是分配,没有free;如果取0,全是free,程序报错
7.
- 每次申请一点点,然后为了防止合并,我们空闲列表按照size去排序,分配策略采用最差算法,这样应该是最碎片化的吧