社区
C语言
帖子详情
嵌入式系统中,不用malloc和free怎么申请和释放内存?
xinggucheng
2006-12-05 09:16:05
嵌入式系统中,不用malloc和free怎么申请和释放内存?请高手指点!!!!
...全文
1615
44
打赏
收藏
嵌入式系统中,不用malloc和free怎么申请和释放内存?
嵌入式系统中,不用malloc和free怎么申请和释放内存?请高手指点!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
44 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xinggucheng
2006-12-27
打赏
举报
回复
这几天也没见高手了
ruidiisy
2006-12-25
打赏
举报
回复
可以自己写一个内存管理的模块。
xinggucheng
2006-12-25
打赏
举报
回复
系统中若没有一定的存储空间供临时使用,手机的内存恐怕不是现在这么小了吧。
jim_ceo
2006-12-24
打赏
举报
回复
自己写一套memory allocate的函数,在开源的代码上porting过来
「已注销」
2006-12-22
打赏
举报
回复
大家对嵌入式系统都太神密了
jamiandy
2006-12-22
打赏
举报
回复
在手机的系统级软件上,数据结构都是基于静态分配的内存空间,可以尽可能的减少malloc和free的使用,对于内存的申请都是通过数组和结构体打包来实现的
xinggucheng
2006-12-21
打赏
举报
回复
请高手就内存管理方面多发表见解
caocheng8230
2006-12-21
打赏
举报
回复
Learn
xinai0521
2006-12-21
打赏
举报
回复
我也来说一点儿吧..
如果有操作系统嵌入式统,那么系统初始化的时候,为把内存为段或页式来管理...
同时还需要CPU蕊片本身支持..如果是用软件去实现,一般就不会malloc/free内存分配!!!!!!
这个时候你malloc分配内存可能是:
比如你的操作系统是64K为页的话,这个时候你malloc分配内存,你分配(物理)地址是不一定连续了...
但是但你使用的时候malloc返回来的地址,你却可以连续使用~~~~~~~
CPU内存管理单元得作一个转换!
但是有很多嵌入式系统的蕊片中,没有内存管理单元.....
也就是有的地方可以使用malloc/free系统中可以使用,而有的却没有!
ceasar1134
2006-12-15
打赏
举报
回复
刚才看的书。
在Wince系统上在堆空间上创建的内存块不能象其他Windows系统那样移动,这样多次malloc之后就能造成很多内存碎片,再申请较大空间是会有问题(即使空闲的总空间大于申请空间也不能分配)。这个是不是不能用malloc和free的原因?
下面还说道了这是用句柄和不用指针的原因,这句话不是很明白,因为一直不是很了解什么是句柄,有人能帮忙解释?
yxy6451792
2006-12-14
打赏
举报
回复
malloc函数就是来分配内存的啊?
xinggucheng
2006-12-14
打赏
举报
回复
等内存紧张时再想办法就晚了
zenny_chen
2006-12-14
打赏
举报
回复
自己做个动态内存管理。
OpenHero
2006-12-14
打赏
举报
回复
malloc和嵌入式没关系的,malloc是语言相关,系统相关的东西,要是人家系统没提供这个api,当然就不能用malloc了
这个得跟系统的实现有关,看系统给你提供什么样的函数,有的系统有它自己实现的内存管理系统;
zhgc1983
2006-12-14
打赏
举报
回复
自己实现啊,从栈上分配!
stonepeter
2006-12-13
打赏
举报
回复
我就没见那些CE下的程序员看过要节约内存的。随手就是一大把内存用了。还有.NET Compact...写好多托管代码,把本来不多的内存用光光。。。呵呵。
hwman
2006-12-12
打赏
举报
回复
Palm中是有专门的函数进行内存管理
rongcanf
2006-12-12
打赏
举报
回复
Mark
lei001
2006-12-12
打赏
举报
回复
平台应该提供内存的分配和释放函数的
xinggucheng
2006-12-12
打赏
举报
回复
这几天不见高手来指点
加载更多回复(24)
ESP32带 log 记录的
malloc
动态
申请
内存
,用于debug 调试查找报错原因
嵌入式C开发
中
,正确动态使用
malloc
,资源
中
写了一个 ...以ESP32为依托,旨在解决在【嵌入式工程】开发过程
中
,在动态
申请
内存
这部分,由于
malloc
之后,忘记
free
释放
,造成
内存
溢出导致 MCU重启的问题 参考博文: ...
mTrack.rar_
Free
!_
malloc
_mtrace_
内存
泄漏_嵌入式
嵌入式系统
下
内存
泄漏检查库函数mTrace以及测试代码,有详细使用文档.这个是将
malloc
和
free
函数控制起来,检查
内存
.
里仁教育详细讲解
malloc
/
free
和new/delete
Malloc
()与
free
()是C++/C语言的标准库函数,new/delete是C++的运算符,它们都可用于
申请
和
释放
动态
内存
。
为什么航空系统的嵌入式软件都禁止动态分配
内存
(含源码)
C 库函数 -
malloc
() 函数简介 函数的声明 介绍一下用法
malloc
的实现机制 虚拟
内存
地址与物理
内存
地址 页与地址构成
内存
地址构成 ...正确使用
free
函数
释放
内存
自定义一套
内存
分配器 最后
嵌入式系统
/ARM技术
中
的浅谈
malloc
与 k
malloc
、c
malloc
、realloc、new 的区别
Malloc
返回一块
内存
地址的指针,否则会返回空指针null,这里要注意的是,当
内存
不再使用的时候,用
free
()函数进行对
内存
的
释放
。 2.calloc 作 用:calloc()函数有两个参数,分别为元素的数目和每个元素...
C语言
69,374
社区成员
243,076
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章