嵌入式消息队列子系统设计与实现

嵌入式消息队列子系统设计与实现

论文摘要

对linux的systemV和posix消息队列以及进程间通信地实现过程进行了深入研究,在前两种消息队列的基础之上开发出一种新的消息队列,并将研究成果应用于北京某集团公司开发的IPTV机顶盒中的通信子系统。在开发新型消息队列过程中,研究了linux虚拟文件系统的整体架构,各关键元素,以及关键组件之间的联系,并通读了源代码。研究了普通文件系统以及特殊文件系统的安装过程。研究了ext2文件系统,特殊文件系统,设备文件系统,socket,命名管道等模块的源代码。在研究各种文件系统的过程中总结出了各种文件系统实现过程中的共性和各自的特性。简要了解了如何编写设备驱动,linux设备驱动模型以及proc文件系统。同时研究了如何在linux(v2.6)内核标准下编写一个完整的子系统。学习了如何使用内存管理子系统提供给内核其他子系统的接口。简要了解了页高速缓存和slab分配器,以及非规则的内核对象在内核逻辑地址空间的分配过程和存放位置。研究了标准内核启动过程以及产品使用的embedded linux启动过程。在IP机顶盒开发中,需要整合各个应用程序到统一的通信子系统框架中。因此开发了一套以订阅交付模式为基础的机顶盒通信子系统。目前已有的SystemV消息队列和Posix消息队列,两者各有特点。Posix相比SystemV更加标准化同时支持线程级的同步和互斥,但两者都有各自的缺陷。首先,SystemV消息队列不支持异步事件通知(asynchronous event notification)。其次就是两者都不使用真正的描述字——导致在消息队列上使用select和poll的困难。项目中的通信子系统需要用select监控一组socket套结字和一个消息队列解决IP机顶盒上本地进程之间以及本地进程与互联网通信的问题,在吸收SystemV和POSIX消息队列的优点的基础上,同时希望解决两者共有的遗失特性的迫切需要下开发了一套新型的基于文件系统的消息队列。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 引言
  • 1.1 项目背景
  • 1.2 开发平台
  • 1.3 项目整体架构
  • 1.4 通信子系统
  • 1.5 项目难点
  • 第二章 对现有技术的分析
  • 2.1 进程间通信技术概述
  • 2.2 命名管道技术分析
  • 2.3 SYSTEMV 消息队列技术分析
  • 2.4 内核与用户空间通信技术分析
  • 2.5 传统消息队列的遗失特性
  • 第三章 文件系统
  • 3.1 文件系统概述
  • 3.2 消息文件系统与文件系统的关系
  • 第四章 设计和实现
  • 4.1 消息文件系统的安装
  • 4.2 消息队列文件
  • 4.3 SELECT 和POLL 机理
  • 4.4 分配描述字给消息队列
  • 第五章 总结与展望
  • 附录 关键模块实现
  • 致谢
  • 参考文献
  • 个人简历
  • 相关论文文献

    标签:;  ;  ;  ;  ;  ;  

    嵌入式消息队列子系统设计与实现
    下载Doc文档

    猜你喜欢