Tangyuxin
d724eed9fc
分离内存分配接口与内存分配算法 ( #5175 )
...
* [kernel][mem] Multiple instances of small memory allocation algorithm
* [kernel][mem] Change small memory management algorithm memory header flag
* [kernel][mem] Fix assertion problem
* [kernel][slab] Multiple instances of slab memory management algorithm
* [kernel][memheap] Remove rt_malloc/rt_free/rt_realloc and other related memory interfaces
* [kernel][mem] Clean up memory space of small memory management objects
* [kernel][kservice] Add memory application interface and thread protection interface
* [kernel][kservice] Fix function return value problem
* [kernel][memheap] Optimize memheaptrace print
* [kernel][memheap] Support best mode
* [kernel][memory] Remove semaphore lock
* [kernel][memheap] Add locked flag
* [kernel][memory] Support malloc memory in interrupt
* [kernel][memheap] Add 'memheapcheck' cmd
* [kernel][mem] Fix failure to request full memory
* [kernel][memheap] Fix compilation warning
* [kernel][mem] Fix mem realloc ASSERT
* [examples][testcases] Add small mem testcase
* [examples][mem_tc] Modify test memory size
* [examples][testcases] Add slab memory management algorithm test case
* [examples][testcases] fix small memory management algorithm test case
* [kernel][memory] Adjusting memory allocation algorithm object definition and interface
* [kernel][memory] Fix compilation warning
* [examples][utest] Fix mem test case
* [examples][utest] fix slab test case
* [utest][testcases] Shorten test time
* [kernel][memory] Formatting code
* [examples][utest] Adjust test run time
* [examples][utest] Formatting code
* [bsp] update all rtconfig.h
2021-12-16 16:23:58 +08:00
zhouji
ee1e85455a
[update] 使用memheap内存管理算法时,对rt_system_heap_init传入的地址进行对齐。
2021-12-14 06:16:59 +08:00
zhouji
3327ffaa15
[update] 使用memheap内存管理时,rt_malloc 0长度返回RT_NULL, 与slab与小内存管理等算法保持一致。
2021-12-14 06:16:59 +08:00
Bernard Xiong
173913b96e
Merge pull request #4872 from aozima/aozima_memheap_develop
...
优化memheap内存管理:1.自动多块粘合可配置;
2021-09-27 14:16:17 +08:00
liukangcc
d99737d8a9
[update] functions annotation.
2021-09-18 16:56:44 +08:00
aozima
2e5b4736fe
[kernel] update memheap auto binding policy.
2021-09-18 10:12:33 +08:00
yangjie
fe5d506ef2
【增加】memheap.c
2021-09-13 16:20:31 +08:00
Meco Man
1997113fbc
FINSH_USING_BUILT_IN_COMMANDS改MSH_USING_BUILT_IN_COMMANDS
2021-08-28 16:48:08 -04:00
Meco Man
29828dc94f
[finsh] finsh组件可以选择是否包含内置命令
2021-08-25 19:48:15 -04:00
GuEe-GUI
b7dd004de0
[bsp/virt64/aarch64] Add 'qemu-virt64-aarch64' bsp
2021-08-06 18:35:58 +08:00
guo
b24447a60a
Merge pull request #4785 from mysterywolf/endif
...
[kernel] 补充endif后缀注释
2021-06-13 09:39:52 +08:00
Bernard Xiong
2be1cb420f
Merge pull request #4788 from yangjie11/memheap
...
[src] add RT_WEAK for rt_malloc_align,rt_free_align
2021-06-12 11:56:52 +08:00
yangjie
fa1f1ef485
[src] add RT_WEAK for rt_malloc_align,rt_free_align
2021-06-11 10:00:23 +08:00
Meco Man
8b53609f57
[kernel] 补充endif后缀注释(3)
2021-06-10 18:39:43 +08:00
Meco Man
b2dd3f00f0
[bug][kernel][heap] 将内存堆保护机制由FIFO改为PRIO
2021-06-07 16:45:39 +08:00
guozhanxin
51ec75f71d
[update]format memheap.c
2021-06-03 15:15:18 +08:00
guozhanxin
8e8ae9c951
[src][memheap] Fix the crash problem after opening Oz optimization on ac6.
2021-06-03 15:02:00 +08:00
Bernard Xiong
4a0855c276
Merge pull request #4359 from willianchanlovegithub/Willianchan
...
[kernel][memheap]add memory heap track and memory heap check.
2021-03-15 09:25:53 +08:00
Meco Man
678306d300
[kernel]auto formatted
2021-03-08 11:25:38 +08:00
cliff-cmc
eea0c3d74a
Add memtrace command for memheap.c
2021-02-26 11:45:19 +08:00
WillianChan
4b4ab15602
[kernel][memheap]rename memtrace to memheaptrace
...
Signed-off-by: WillianChan <chentingwei@rt-thread.com>
2021-02-20 16:19:00 +08:00
WillianChan
e94d907056
[kernel][memheap]fix RT_DEBUG_LOG errors.
...
Signed-off-by: WillianChan <chentingwei@rt-thread.com>
2021-02-20 15:53:21 +08:00
WillianChan
114f305f77
[kernel][memheap]add memory heap track and memory heap check.
...
Signed-off-by: WillianChan <chentingwei@rt-thread.com>
2021-02-20 15:35:45 +08:00
unknown
b71a0eb1d4
add rt_memory_info() for memheap.c
2020-12-25 15:06:55 +08:00
minghao_wang
b9a186952c
fix bug of rt_memheap_detach
2020-11-16 15:10:22 +08:00
Bernard Xiong
1f37de29c4
Fix the value width issue under 32/64 bit arch.
2018-12-13 14:54:26 +08:00
Bernard Xiong
484afe9d2c
[Kernel] Add 64bit CPU support.
2018-10-26 06:35:42 +08:00
Bernard Xiong
41f7f2c284
[Kernel] Update to Apache License v2.0
...
Update license for RT-Thread kernel.
2018-09-14 22:37:43 +08:00
liang yongxiang
0509af9319
[kernel] add assert to memheap object
2018-07-11 18:02:25 +08:00
liang yongxiang
b09445cbfe
[Kernel][memheap] fix rt_realloc bugs
...
- missing free old memory after malloc new
- free memory when new size is zero
2018-03-28 10:19:32 +08:00
Bernard Xiong
2f409c85f1
[Kernel] Use rt_object_get_information to get object chain
2017-12-12 07:36:37 +08:00
emlslxl
e521decf2e
根据documentation/coding_style_cn.txt约定 对内核src和include目录下的文件代码进行格式化
2017-09-15 11:02:24 +08:00
Grissiom
2d3b2f1e94
memheap: check the USED bit in rt_memheap_free
...
This will ease the debugging of double-free bug.
2015-04-08 16:39:50 +08:00
Grissiom
f8c171d5ad
memheap: check against over written in rt_memheap_free
2015-01-16 11:41:20 +08:00
Grissiom
c3a39444da
memheap: dont alloc/memcpy when there is next node is enough for realloc
...
When realloc a bigger space and the next node is free and big enough, we
should directly relocate the next node instead of doing alloc/memcpy.
The new method not only faster in this cases, it would avoid memory
fragment as well.
2013-07-15 11:47:55 +08:00
Bernard Xiong
2c33678aac
fix the memory block splitting issue
2013-07-11 16:20:28 +08:00
yiyue.fang
86db9ed965
reformat the coding style
...
convert Tabs to spaces
2013-06-29 10:00:14 +08:00
Bernard Xiong
79392bb082
Embedded GPLv2 license.
2013-06-24 17:06:09 +08:00
Bernard Xiong
d80a471680
Fix the memheap_realloc issue
2013-06-03 06:44:35 +08:00
Bernard Xiong
608bf2cb3d
add rt_memheap_realloc function
2013-04-17 22:09:48 +08:00
dzzxzz@gmail.com
965c25d3a4
fixed the coding style in memheap.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2569 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-30 16:11:12 +00:00
bernard.xiong@gmail.com
975610477e
Add RT_USING_MEMHEAP_AS_HEAP feature: system can use "heap" memheap as system default memory heap.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2554 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-29 12:29:03 +00:00
dzzxzz@gmail.com
dc5a16861a
fixed coding style in src/memheap.c
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2524 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 08:35:19 +00:00
dzzxzz@gmail.com
0e40d55d9f
fixed the coding style of RT_DEBUG_LOG
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2500 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-20 07:25:19 +00:00
bernard.xiong@gmail.com
1c425607c3
fixed mutex issue in memheap; fixed compiling issue in kservice.c when COMPILER is not defined; add finsh for win32 porting.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2365 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-22 03:12:21 +00:00
qiuyiuestc@gmail.com
a73abdccf5
split export symbols from rtm.c to each file
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2263 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-08-27 01:21:57 +00:00
dzzxzz@gmail.com
43f2bfc013
add a new command list_memheap() into finsh
...
and unify the coding style in memheap.c
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2151 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-03 06:16:30 +00:00
bernard.xiong@gmail.com
b14044212b
remove soft timer tick increase
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2108 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-05 01:45:17 +00:00
bernard.xiong@gmail.com
87195cf84e
Added memory heap object implementation; Added RT_LIST_OBJECT_INIT macro.
...
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2046 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-04-14 03:52:56 +00:00