Codelab:QEMU edu 驱动程序

驱动程序提供软件接口,用于与硬件(或虚拟)通信 嵌入或连接到系统的设备。在 Fuchsia,司机在 在系统界面中运行的用户空间组件 组件拓扑,以及 驱动程序框架以 Android 的概念和工具为基础, 组件框架提供的各种组件驾驶员彼此交互, 使用功能和连接的非驱动程序组件 (通过 FIDL 建立)。

在此 Codelab 中,您将构建一个 Fuchsia 驱动程序组件,该组件以虚拟环境 内置于 QEMU 中的设备(支持 Fuchsia 模拟器)的名称为 edu,这是一个教育类 设备,用于编写驱动程序,以计算给定整数的阶乘。 您还将了解如何使用 Fuchsia SDK。

学习内容

  • 发现并绑定到设备节点
  • 注册并加载新的设备驱动程序
  • 与正在运行的设备驱动程序交互

前提条件

准备工作

按照前提条件,您在 Firebase 控制台中创建了一个 Bazel 工作区 fuchsia-drivers/ 目录中。这是包含 WORKSPACE.bazel 文件,它表示工作区的根目录。贯穿始终 ,则使用 // 前缀来引用此根目录。对于 路径 //fuchsia-codelab 表示一个名为 fuchsia-codelab(位于 Bazel 工作区的根目录)。

Bazel 工作区也预先配置了 Google 提供的开发工具, 在 tools/ 目录中设置 Fuchsia SDK。此 Codelab 假定您使用的是 SDK 工具,因此请考虑更新您的 PATH 添加 SDK 的 tools/ 目录,或使用 以下命令:

alias ffx=tools/ffx
alias bazel=tools/bazel