Fuchsia 驱动框架

概述

Fuchsia驱动框架 (FDF) 是一整套库,工具,元数据和映像文件的集合,可以帮助驱动开发者进行开发,测试和发布针对Fuchsia的驱动。FDF 想要提供一个稳定的ABI去允许驱动开发者仅需开发一次驱动后,就可以应用在Fuchsia内核和平台的多个版本上。

同时,对于Fuchsia驱动开发者而言, FDF 包含一个驱动管理器,驱动主机,核心库(libdriver),FIDL 接口,banjo接口和参考。

FDF 正在不断发展,但尚未达到 ABI 稳定。

驱动管理器

驱动管理器是作为 FDF 的一部分而维护和开发二进制文件。它负责在所有平台上加载驱动和管理设备。这是设备启动时要运行的初始进程之一。它在预先配置的路径下寻找到驱动包后,通过运行驱动绑定程序,试图通过一个驱动匹配所有的设备,然后管理设备生命周期。它管理着一个名为设备文件系统(devfs)的虚拟文件系统,为来自驱动外部的用户空间服务/组件提供对所有设备的统一访问接口。 devfs被挂载在 /dev 下,其中包含由设备实现的最终路由接口的虚拟文件。

驱动主机

驱动主机是一个由驱动管理器启动的二进制文件,用于管理一个或多个驱动程序。这样有助于对驱动程序进行沙箱管理。