发明名称 |
一种基于共享存储器的双CPU通信方法 |
摘要 |
本发明公开了一种基于共享存储器的双CPU通信方法,在第一CPU和第二CPU之间存在双向传输通道,每一通道使用两个环形队列,一个用于存放消息索引,一个用于存放消息实体;并且每一通道传输过程包括以下步骤:初始化流程:通信前完成本CPU负责的队列读写指针的初始化;发送消息流程:将新消息实体写入消息实体队列,并更新消息实体队列写指针,即指向新消息实体之后的可用单元;更新消息索引队列写指针所指单元的内容,指向消息实体队列中的新消息实体,并更新消息索引队列写指针指向下一单元;接收消息流程。本发明方法由于在共享存储器中引入索引队列和实体队列,支持可变消息长度,减少了发送方和接收方的等待时间,提高了CPU的利用率,提高了数据吞吐量和处理速度。 |
申请公布号 |
CN101105786A |
申请公布日期 |
2008.01.16 |
申请号 |
CN200610103231.0 |
申请日期 |
2006.07.14 |
申请人 |
中兴通讯股份有限公司 |
发明人 |
江帷;官华伯;张绪广 |
分类号 |
G06F15/167(2006.01) |
主分类号 |
G06F15/167(2006.01) |
代理机构 |
北京安信方达知识产权代理有限公司 |
代理人 |
王漪;王继长 |
主权项 |
1.一种基于共享存储器的双CPU通信方法,在第一CPU和第二CPU之间存在双向传输通道,每一通道使用两个环形队列,一个用于存放消息索引,一个用于存放消息实体;并且每一通道传输过程包括以下步骤:A、初始化流程:通信前完成本CPU负责的队列读写指针的初始化;B、发送消息流程:将新消息实体写入消息实体队列,并更新消息实体队列写指针,即指向新消息实体之后的可用单元;更新消息索引队列写指针所指单元的内容,指向消息实体队列中的新消息实体,并更新消息索引队列写指针指向下一单元;C、接收消息流程:消息索引队列读指针前移一个单元,根据该单元中的索引计算待处理消息实体的读指针,并更新消息索引队列读指针;读取待处理消息实体并处理。 |
地址 |
518057广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法律部 |