厦门阿米控技术有限公司

1784PKTXD

发布时间:2023-01-14

实时系统中动静结合的内存管理实现,系统分区的实现  通过Partition_Create()函数创建一个内存分区,函数定义为int Partition_Create(mempartition *mp,unsigned int unum,unsigned int usize);  mp为创建的内存分区,unum为该分区中内存块数量,usize为内存块大小。  对于块内存的申请,采用c语言提供的malloc函数从内存中申请。这对于程序设计者而言提供了极大的方便,对于系统分区不适合嵌入式应用(该实时系统设计应用于嵌入式设备中)需求的情况下,可以删除该分区另外再建立。不过这样做的情况应该尽可能少,因为多次调用malloc/free会产生较多的内存碎片。在做设计时,应该尽可能预先设定好分区数量和各个分区中内存块的数量和大小,尽管系统提供了重建分区的功能。  每个块内存的**部分存储该分区对象,其后才是各个内存块。在内存块空闲时,其内部存储了下一个节点的的指针。分配以后,该信息丢失,直接分配给申请者,这样省掉了存储每个内存块信息额外的RAM开销。内存释放时,直接加到该分区空闲内存链表的尾部,

上一条:1785L40L

下一条:1785L60L

分享:

【如果您还没有关注“公司名称”手机网站】

Top