摘要:
邮箱是一个通过在系统(共享)内存空间传递消息来实现同步和通信的对象。uTenux中每个邮箱都包含一个用来发送消息的消息队列和一个用于等待接收消息的任务队列,其使用邮箱功能的消息内容放置在发送方和接收方共享的内存中,因此,实际发送和接收的只有位于这片共享空间的消息起始地址。消息的内容本身并不复制。 消息邮箱的API包括创建删除发送接收删除的功能。 1、使用tk_cre_mbx创建一个消息邮... 阅读全文
摘要:
事件标志是一个用来实现同步的对象,由多个位组成,用作指示对应事件存在的标志。事件标志由用来指示对应事件存在的位模式(bitpattern)和一个等待事件标志的任务队列组成。 uTenux提供了一组API用于处理事件标志:创建、删除、设置、等待、清除。 1、创建事件标志:tk_cre_flg 为建立的事件标志分配一个控制块 事件结构体: typedef struct t_cflg {... 阅读全文
摘要:
信号量(semaphore)是一个用来指示可用的资源并将可用资源的数量以数值的形式表示出来的对象。当使用一组资源时,信号量用来实现互斥控制和同步。uTenux提供了信号量出来的API,可以很方便地使用信号量。 uTenux中,信号量包含一个资源计数(用来指示是否存在相应的资源以及资源的数量)和一个等待信号量的任务队列。 当一个任务返回m个资源时,信号量资源计数加m。当一个任务获得n个资源时,信... 阅读全文