D-BUS学习

来源:互联网 发布:水电工程预算软件 编辑:程序博客网 时间:2024/06/05 16:33


 D-BUS是一种轻量级的IPC方案。目前在Linux下广泛使用。

一些基本概念的解释和翻译:
http://blog.mcuol.com/User/AT91RM9200/Article/12816_1.htm
http://www.cnblogs.com/wzh206/archive/2010/05/13/1734901.html
一个完整的DBus学习教程(强烈推荐,写得相当的全):
http://blog.csdn.net/fmddlmyy/archive/2008/12/23/3585730.aspx
两个DBus的完整示例,相当有参考价值
http://blog.chinaunix.net/u1/58649/showart_462468.html
http://hi.baidu.com/zengzhaonong/blog/item/670b98d6e63ae42c07088bae.html
DBus官方网站,最原滋原味的DBus学习内容
http://www.freedesktop.org/wiki/Software/dbus
http://dbus.freedesktop.org/doc/dbus-tutorial.html
http://dbus.freedesktop.org/doc/dbus-specification.html
欢迎大家提供更多的DBus学习资料,一起研究。

DBus是一种IPC机制,由freedesktop.org项目提供,使用GPL许可证发行,用于进程间通信或进程与内核的通信。
注:Linux中的IPC通信机制还包括,管道(fifo),共享内存,信号量,消息队列,Socket等。


DBus进程间通信主要有三层架构:
1.底层接口层:主要是通过libdbus这个函数库,给予系统使用DBus的能力。 
2.总线层:主要Message bus daemon这个总线守护进程提供的,在Linux系统启动时运行,负责进程间的消息路由和传递,其中包括Linux内核和Linux桌面环境的消息传递。总线守护进程可同时与多个应用程序相连,并能把来自一个应用程序的消息路由到0或者多个其他程序。 
3.应用封装层:通过一系列基于特定应用程序框架将DBus的底层接口封装成友好的Wrapper库,供不同开发人员使用(DBus官方主页http://www.freedesktop.org/wiki/Software/dbus,提供了大部分编程语言的DBus库版本)。比如libdbus-glib, libdbus-python.

原创粉丝点击