Fuchsia 驱动程序框架 (DFv1)

概览

Fuchsia 驱动程序框架 (FDF) 包含库、工具、元数据和映像的集合,使驱动程序编写人员能够开发、测试和分发以 Fuchsia 为目标的驱动程序。它旨在提供一个稳定的 ABI,使驱动程序开发者只需编写一次驱动程序,即可在多个版本的 Fuchsia 内核和平台上使用它。

目前,FDF 由驱动程序管理器、驱动程序主机、核心库 (libdriver)、FIDL 接口、Banjo 接口和为 Fuchsia 开发驱动程序的指南组成。FDF 在不断发展,目前尚未实现 ABI 稳定性。

驾驶员经理

驱动程序管理器是一个二进制文件,作为 FDF 的一部分进行维护和开发。它负责在所有平台上加载驱动程序并管理设备。这是设备启动时要启动的初始过程之一。它会在预配置的路径中查找驱动程序软件包,尝试通过运行驱动程序的绑定规则为每个设备匹配驱动程序,并管理设备生命周期。它托管了一个名为“Device Filesystem”(devfs) 的虚拟文件系统,该系统提供从驱动程序外部的用户空间服务/组件对所有设备的统一访问。devfs 装载在 /dev 下,并包含最终路由到设备实现的接口的虚拟文件。

驱动程序主机

驱动程序主机是一个二进制文件,由驱动程序管理器启动,以托管一个或多个驱动程序。它有助于对驱动程序进行沙盒化。