2700|0

5

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

uTenux操作系统内核API之邮箱 [复制链接]

      关于操作系统邮箱的相关概念在手册中以提到,在这里详细介绍一下如何创建消息包!
       邮箱功能的消息内容放置在发送方和接收方的内存中,因此,实际发送和接收的只有位于这片内存的消息起始地址。消息的内容本身并不复制。uT/Kernel通过一个链表来管理消息队列中的消息。应用程序必须在消息发送开始时uT/Kernel使用的链表分配空间。这片空间被称为消息头。消息头和消息体一起称为一个消息包。当一个系统调用发送一条信息到邮箱中时,消息包的起始地址在参数中传递。当一个系统调用从邮箱中接收到一条消息时,消息包的起始地址在返回参数中传递。
消息(包括消息头在内,不含消息优先级)的数据包的结构如下:
typedef struct t_msg {
VP msgque[1];
} T_MSG;

实际的消息必须放置在消息头之后的区域中。不限制消息的大小,消息的长度可变。

自定义的消息包的结构如下:
typedef struct u_msg {
VP msgque[1]; /* Area for message queue,as same as T_MSG */
UB  *usrmsg;    /* Area for message pointer */
} U_MSG;

1、如何使用邮箱的发送API:
U_MSG sndmsg;
tk_snd_mbx(mbxid,(T_MSG*)&sndmsg);

2、如何使用邮箱的发送API:
U_MSG *pk_rcvmsg;
tk_rcv_mbx(mbxid,(T_MSG*)&pk_rcvmsg,-1);
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表