这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » Ucos学习-信号量+互斥量+内存管理

共1条 1/1 1 跳转至

Ucos学习-信号量+互斥量+内存管理

专家
2009-03-13 12:55:05     打赏
 

 

1信号量:semaphore,它可以有很多值,代表资源数

 

OSSemCreate()          --建立信号量

OSSemPend()      --申请信号量

OSSemPost()              --释放信号量

 

信号量实现互斥中,可能产生优先级反转,不能改变占用任务的优先级

 

 

2互斥信号量:mutex,二值,作用是防止优先级反转,可改变占用资源的优先级,实现共享资源的独占

OSMutexCreate()

OSMutexPend()

OSSemPost();

 

互斥量可以说是信号量的特殊形式

 

 

3.Memory Managerment一般很弱,据说可以管理1G空间

内存管理很重要,未及时释放内存会导致程序崩溃

OSMemGet()       OSMemPut()应该成对出现

 

Partition->blocks

 

-First-Create blocks in partition

MEMA_Ptr = OSMemCreate(MEMA,BlockNum,BlockSize,&err);

 

-Second-Get block,one block one time

mem_apl = OSMemGet(MEMA_Ptr,&err);

 

-Third-Release block

OSMemPut(MEMA_Ptr,mem_apl);




关键词: 学习     信号     互斥     内存     管理    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]