Bluez 架构:解释这个架构

Posted

技术标签:

【中文标题】Bluez 架构:解释这个架构【英文标题】:Bluez Architecture : Explain this Architecture 【发布时间】:2012-02-06 13:10:30 【问题描述】:

这里我想了解bluez(蓝牙堆栈协议)的架构。

我了解如何在模块中启用蓝牙。它通过在这个蓝牙芯片中的 BT_EN 引脚启用。 将此设备用HCI UART 连接到Bluez 进行通信。

我想了解 bluez 架构及其工作原理。

这里我放了一张 bluez 概览图的图片。任何请解释一下这个图中的Bluez Core是什么。

请解释一下 bluez 在蓝牙设备中的工作原理。

【问题讨论】:

【参考方案1】:

该图中的 BlueZ Core 是主要的主机堆栈软件。它使用 HCI 协议与 BT 硬件通信,对硬件进行一般控制。您必须阅读 BT 规范才能全面了解所有 HCI 协议命令的作用。但在高层次上,还有读取硬件功​​能、版本、启动扫描状态、解析扫描结果、管理连接等内容。

【讨论】:

L2CAP、HCI Sockets和SCO sockets的作用是什么?我只知道那部分。首先,我们必须初始化 HCI UART 驱动程序,然后我们必须在内核中调用一些 ioctl 调用。所以请告诉我为什么我们在 UART 驱动程序初始化后使用这个 ioctl 调用。 L2CAP 是用于发送用户数据的更高级别协议,位于 HCI 之上。 SCO 用于语音呼叫等同步数据。 HCI 套接字只是应用程序直接向硬件设备透明发送任意 HCI 数据包的一种方式。 @TJD 所以你基本上是说 BlueZ 是主机控制器接口的实现。那么这是否意味着建立安全连接级别(4、3、2、1)和/或实施 GATT 服务,它是应用层的级别?那么L2CAP呢?这也超出了 BlueZ 的范围?

以上是关于Bluez 架构:解释这个架构的主要内容,如果未能解决你的问题,请参考以下文章

关于ARM内核与架构的解释

架构师内功心法,被誉为摩斯密码的解释器模式详解

架构师内功心法,被誉为摩斯密码的解释器模式详解

LAMP网站架构解释

JVM采用解释器和编译器并存的架构

软件架构框架模式模块组件插件概念汇总