47 内存管理实验_第1页
47 内存管理实验_第2页
47 内存管理实验_第3页
47 内存管理实验_第4页
47 内存管理实验_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、普中STM32开发板带您进入ARM世界,内存管理实验,普中STM32开发板带您进入ARM世界,本讲主要内容 1.内存管理介绍 2.硬件电路 3.编写内存管理控制程序,普中STM32开发板带您进入ARM世界,1.内存管理介绍 内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。 其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回 收内存资源。 malloc、free,普中STM32开发板带您进入ARM世界,分块式内存管理,普中STM32开发板带您进入ARM世界,(1)内存分配原理 当指针p调用malloc申请内存的时候,先判断p要分配的内存块数(m ),然后从第n项开始,向下

2、查找,直到找到m块连续的空内存块(即对 应内存管理表项为0),然后将这m个内存管理表项的值都设置为m(标记 被占用),最后,把最后的这个空内存块的地址返回指针p,完成一次分 配。注意,如果当内存不够的时候(找到最后也没找到连续的m块空闲内 存),则返回NULL给p,表示分配失败。 (2)内存释放原理 当p申请的内存用完,需要释放的时候,调用free函数实现。free函 数先判断p指向的内存地址所对应的内存块,然后找到对应的内存管理表 项目,得到p所占用的内存块数目m(内存管理表项目的值就是所分配内 存块的数目),将这m个内存管理表项目的值都清零,标记释放,完成一 次内存释放。,普中STM32开发板带您进入ARM世界,2.硬件电路 本实验使用到硬件资源如下: (1)D1指示灯 (2)K_UP、K_DOWN和K_RIGHT按键 (3)串口1 (4)TFTLCD模块 (5)外部SRAM(IS62WV51216),普中STM32开发板带您进入ARM世界,3.编写内存管理控制程序 本章所要实现的功能是:通过K_UP、K_DOWN和K_RIGHT按键控制内存 申请、内存释放、内存类型选择(外扩SRAM还是内部SRAM),同时将内 存使用率通过TFTLCD和串口1显示,并且控制D1指示灯闪烁,提示系统正 常运行。程序框架如下: (1)初始化内存池 (2)内存申

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论