参考文档
① OpenWrt micro bus 架构
② OpenWrt ubus简介
一、ubus基本概念
- 对象
类似于总线的设备,由服务进程注册。对象可以对外提供“方法”,可以接收外部“通知”。
ubus还有路径 “路径” 的概念。路径本质上是对象,因为与 “对象”有密切关联,所以在命名上看似隶属“对象” 。
例如:
network
network.device
network.interface
network.interface.lan
network.interface.loopback
network.interface.wan
network.interface.wan2
network.wireless
network描述为“对象” , 其他描述为“路径” 。
- 方法
对于服务端,对象通过方法对外暴露API。对于客户端,在对象所在的ubus总线上可以“执行”对象代码并(或)获取对象状态。
- 通知
对于客户端,任意连接同一ubus总线可以任意时刻发射带标签(字符串标识)信号通知。对于服务端,服务端时刻监听总线上的信息,提取感兴趣的标签通知。
- 订阅
对于客户端,如果对于一类信息感兴趣,可以订阅。信息变化时,服务端主动通知客户端。
二、ubus结构框图
三、ubus API
- 调用流程
可以参考文章ubus简介.
API列表
参考头文件libubus.h