完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
keil5.25环境下,模拟仿真。rtt自己的heap管理,内存堆就是数组,截图中0x20005858-0x20010000地址范围内就是这个数组,初始化后就可以调用rt_malloc使用堆了。使用rt_malloc申请了内存,返回0x20007624地址,确实也在这个数组的地址范围内。现在问题是,在keil下,malloc和rt_malloc好像用的不是同一套底层函数,堆内存也不是用同一块。在启动文件中定义的heap为0,按道理来说,用编译器自带的malloc函数,应该申请不到内存。截图中,使用malloc却可以申请到内存,而且申请到的内存地址0x20005460也不在rtt管理的heap地址范围内。 疑问: 1、keil下malloc和rt_malloc用的不是同一套底层函数,堆内存也不是用同一块? 2、keil下malloc内存堆大小是在启动文件Heap_Size中定义的吧,和rtt的堆是相互独立的,互不相关? 3、keil下在启动文件定义堆为0,为什么malloc还可以申请到内存? |
|
相关推荐
3个回答
|
|
rt-thread/components/libc/compilers/armlibc/syscall_mem.c 这里做了转接
|
|
|
|
nano里没有吧
|
|
|
|
你可以指令级单步进去看下怎么走的。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1042 浏览 0 评论
IaaS+on+DPU(IoD)+下一代高性能算力底座技术白皮书
2035 浏览 0 评论
飞凌嵌入式-ELFBOARD 常用的USB接口及其不同版本介绍第1期
1074 浏览 0 评论
【Vision Board创客营连载体验】RA8D1-Vision Board上OSPI-Flash实践
1533 浏览 0 评论
I.MX6ULL-飞凌 ElfBoard ELF1板卡- 应用层更改引脚复用的方法
3755 浏览 0 评论
65196 浏览 21 评论
嵌入式热门DIY项目:智能机器人开源资料合集(原理图、代码、论文)
67766 浏览 22 评论
57801 浏览 32 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-17 20:08 , Processed in 0.644940 second(s), Total 73, Slave 56 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号