搜索
当前位置: 眀彩娱乐 > 动态存储分配 >

ucos-ii学习笔记——动态内存分配原理及使用

gecimao 发表于 2019-04-23 08:35 | 查看: | 回复:

  //第二个参数50表示分区中内存块的数目,第三个参数64表示每个内存块的字节数,最后&err为错误信息

  //函数的返回值为创建的内存分区的指针,为OS_MEM内存控制块类型的指针,上面定义了

  //函数的参数为指向内存分区的指针,上面已经创建了内存分区IntBuffer

  //函数的返回值为内存块指针,上面定义了INT8U*IntBlkPtr;//定义内存块指针无符号char型的

  //注意,应用程序在使用内存块时,必须知道内存块的大小,并且在使用时不能超过该容量

  //函数中的第一个参数IntBuffer为内存块所属的内存分区的指针,IntBlkPtr为待释放内存块指针

  //在使用函数OSMemPut()释放内存块时,一定要确保把该内存块释放到它原来所属的内存分区中

  OS_MEM*IntBuffer;//定义内存控制块指针,创建一个内存分区时,返回值就是它

  INT8UIntPart[8][6];//划分一个具有8个内存块,每个内存块长度是6个字节的内存分区

  //查询到的动态内存分区状态的信息是一个SO_MEM_DATA型的数据结构OSMemQuery()函数查询到的内存分区

  //此次释放,只能释放最后一次申请到的内存块,前面因为IntBlkPtr被后面的给覆盖掉了,所以释放

  //根据上面的分析可以很容易分析运行的现象了,从现象中可以看出,任务YouTask和HerTask申请了内存块使用完了

  //后就释放了,而任务MyTask要一直到运行了6次后才释放所申请的内存块

本文链接:http://hem-larm.com/dongtaicunchufenpei/206.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部