
一、问题描述
简易内存池分配问题
题目描述
有一个简易内存池,内存按照大小粒度分类,每个粒度有若干个可用内存资源。用户会进行一系列内存申请,按照一定的规则分配内存池中的资源,并返回申请结果的成功或失败列表。
分配规则
-
按需分配:
- 分配的内存块大小必须大于等于申请的内存需求量。
- 一旦有可用内存块满足需求,就必须分配。
-
优先分配粒度小的内存块:
- 如果有多个可满足需求的内存块,优先选择粒度最小的块。
-
按申请顺序分配:
- 内存分配需要按照申请列表的顺序逐一处理,先申请的优先分配。
-
内存块不可拆分:
-
内存块分配后不可