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);