VBus

介绍   

        VBus组件是RT-Thread与RT-Thread,或者RT-Thread与Linux沟通的桥梁,能够让双方自由交换数据和信令,形成分布式通信VBus 是建立在环形缓冲区上的一个组件,用于高效的进行系统间通讯,主要功能和特点如下:


    • 支持 QoS,保证关键数据及时送达;
    • 支持多路复用,可以在一条 VBus 上实现多种功能;
    • 直接使用 device 接口和文件接口,方便易用;
    • 支持阻塞连接;
    • Linux 侧支持用户态驱动程序,可靠性高;
    • Linux 用户态程序可以像操作普通文件一样通过 VBus 来进行通讯:
      • 可以通过常规的 open/read/write/close 函数来进行操作,也支持 select。
    • 同时也支持 Linux 内核态使用 VBus。
    • RT-Thread 程序可以像操作普通设备一样通过 VBus 来进行通讯:
      • 就像普通的串口设备一样,可以通过 rt_device{open,read,write,close} 来进行操作


VBus 中数据的发送和接收

VBUS及其上的分布式组件


        整个 VBus 是分层,分模块的易于扩展的架构。用户可以通过高级的 API(文件接口或者设备接口)或者底层的 VBus API 编写自己的驱动和应用程序,而不用关心底层的细节。


    • rsh/finsh shell:
      • 调试用的命令行接口
    • rfs/DFS:
      • 用于向 RT-Thread 提供的远程文件系统访问接口;亦支持 RT-Thread 去访问 Linux 的设备文件;
    • rnet:
      • RT-Thread 上的虚拟网卡,提供 Linux 与 RT-Thread之间的相互访问,以及和远端的访问;
    • USB 虚拟端点
      • 将一个 USB 的端点通过 VBus 映射到 RT-Thread 中的设备中

技术指标