相关的Issue

#I43XOP:堆内存算法支持多段非连续性内存区域

原因(目的、解决的问题等)

需求实现。

描述(做了什么,变更了什么)

1、多块内存区域地址不连续,地址偏差Gap视为虚拟已使用节点,把多个内存块作为独立内存池进行管理。
2、内存维测功能适配多块非连续内存区域。

测试用例(新增、改动、可能影响的功能)

用例运行结果:

entering kernel init...
LiteOS heap memory address:0x200001ec, size:4096

Entering scheduler

--- Test Start ---

[Passed]-ItLosMem001-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem002-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem003-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem004-LOS-MEM-LEVEL0-FUNCTITON
[Passed]-ItLosMem006-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem007-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem008-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem009-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem010-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem011-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem012-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem013-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem014-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem015-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem016-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem017-LOS-MEM-LEVEL0-FUNCTITON
[Passed]-ItLosMem018-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem019-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem020-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem040-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem045-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem046-LOS-MEM-LEVEL1-FUNCTITON
[Passed]-ItLosMem047-LOS-MEM-LEVEL1-FUNCTITON

--- Test End ---

failed count : 0, success count:23

增加测试用例:

验证不同内存区域间隔不能释放、验证内存区域追加到主堆内存池,内存池独立初始化为独立的内存池。
testsuits\sample\kernel\mem\It_los_mem_046.c
testsuits\sample\kernel\mem\It_los_mem_047.c