版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、项目6:内存分配PDA的内存管理 (2),本节课程主要知识点 堆 栈 各种内存分配方法的对比,重点和难点,重点 堆和栈的基本概念 难点 堆的使用,堆,堆,堆是一段连续的虚拟地址空间。每一个进程都管理着一个堆。 应用程序在堆中可以动态地分配、释放所需大小的内存块。 在堆内分配内存块可以是任意大小的,而直接分配内存就必须以内存页为单位。,内存的页,内存是以页为单位分配的。 内存页的大小与具体的CPU有关。 页的大小一般是1KB,4KB,64KB等。,本地堆,默认情况下,Windows CE为本地堆保留192KB的虚拟内存空间,如果不够的话,可用函数VirtualAlloc()申请更多的内存。 19
2、2KB的虚拟内存并不立刻提交分配物理内存。 当堆中的块被释放时,系统将查看是否整个页都已经被释放,如果是那个页将被回收。,在本地堆中分配内存,堆内分配内存可以任意大小,单位为字节,所分配的内存称为块。 使用完后注意要回收分配的内存。 在堆中申请内存可使用malloc/free、new/delete、LocalAlloc/LocallFree等函数。 Windows CE5.0只支持堆中固定块的分配,这样随着时间的推移,多次创建释放内存块,堆内就会产生大量内存的碎片。,堆的操作函数,LocalAlloc在堆中申请内存 LocalFree释放使用过的内存 HeapCreate创建堆 HeapFre
3、e释放堆,堆的碎片,在Windows CE5.0创建的堆中,所申请的内存块不能够移动,多次创建内存块、释放内存块会产生内存碎块。 当需要分配一个大一点的、连续的内存块时,本来空闲的内存块加起来足够大,但是这些内存块是分隔的,系统无法分配这些内存碎片。,碎片的解决,程序员如果要频繁的在堆中创建、释放内存块的话,最好自己创建一个单独的堆,而不用默认的堆。 在使用结束后要及时释放掉该内存堆。,栈,栈,栈是进程中的一个重要的数据结构。函数使用栈传递参数,函数中的局部变量也存放在栈中。 每个线程都有一个栈,在线程创建时由系统为其分配。 线程栈的大小默认为64KB,可以通过使用编译器的/STACKSIZE
4、参数,调整栈的大小。,栈的使用,栈不能由用户程序自己创建。 栈的溢出会导致应用程序的退出,程序设计时一定要注意。 不要在较低内存配置的情况下使用大量的栈。,静态数据,Windows CE为应用程序的静态数据分配了read/write和read only两个内存区域。 这两个内存区域以页面为单位来分配内存。 应用程序设计时要尽量保证静态数据区域没有空间的浪费。,各种内存分配方法的对比,直接分配内存,优点 大的内存块最好是直接分配虚拟内存。 是最灵活的内存分配类型。 缺点 担心页面的粒度并需跟踪保留页面和提交页面的情况。,本地堆,优点 使用便利,不需要用户自己创建。 可根据需要来增加。 缺点 多次访问后会产生碎片。 系统没有回收碎片的机制。,单独的堆,优点 完全根据需要来创建。 可以随时释放其内存,从而将内存碎片问题消灭在萌牙状态。 缺点 须手工创建和释放相应的内存,栈,优点 易于使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 27633-2026琯溪蜜柚
- 临港新建储气罐设备调试服务中心建设项目可行性研究报告
- 中药经典名方制剂车间可行性研究报告
- 中药材原料药初加工项目可行性研究报告
- 管材制作课件
- 银行招聘性格测试压力应对备考指南及答案
- 助产资格证助产技术操作模拟试题及答案
- 船舶气象与海图应用模拟试题及答案
- 摩托车驾驶证科目三道路驾驶技能考试必刷习题及答案
- 驾驶证考试科目三通过路口模拟试题及答案
- 2026年新教材统编版九年级上册语文期末复习:古诗词理解性默写 专项测试卷(含答案)
- YMO数学竞赛2024秋季七年级复赛真题试卷含答案解析可打印
- 武汉产业投资控股集团有限公司招聘笔试题库2026
- ISO 9001-2026 换版深度解读:36条条款逐条对比与企业换版行动指南
- 26新五(上)语文课后生字词情景默写
- 关于学生思想政治教育问题的调研报告2026(3篇)
- 2026年呼吸影像读片考试题目含答案
- 2026年税务注销清算代理合同模板
- 胰腺导管内乳头状黏液瘤外科治疗的研究进展2026
- 急诊科三基培训
- 固定资产全生命周期管理实务
评论
0/150
提交评论