设备驱动开发
开发流程
SylixOS 设备驱动开发应是一个循序渐进的过程,大致分为以下几个阶段:
步骤 1:建立工程
SylixOS 设备驱动开发所建立的工程分为 BSP 工程与内核模块工程两种。BSP 工程是将驱动静态的和内核进行编译,生成 BSP 系统镜像,在 BSP 工程中需要实现 SylixOS 的初始化,并实现操作系统能够运行的最小系统环境;内核模块工程是将驱动单独编译为模块,在需要的时候载入,以减小系统镜像的大小与提高系统镜像的灵活性。
此阶段应实现 BSP 初始化所需的汇编代码 startup.S,实现 BSP 所需的内存配置 bspMap.h 文件。
步骤 2:实现 SylixOS 最小系统
SylixOS 板级支持包中已经定义好了各初始化流程应执行的接口,开发者所需完成的是各个初始化接口的具体实现,而开发者首先需要对具体开发板的 MMU 与 Cache 进行配置,并实现中断控制器、串口驱动与系统 Tick 定时器驱动,在此基础之上,一个 SylixOS 的最小系统即可以运行起来。
步骤 3:实现存储设备与网络设备驱动
存储设备驱动实现之后,文件系统就可以实现挂载,所有的文件读写就能够进行实际的落盘操作;网络设备驱动实现之后,SylixOS 集成开发环境 RealEvo-IDE 提供的众多基于网络的工具就可以极大的简化开发者的开发流程,降低开发难度。
步骤 4:实现各设备驱动
当最小系统、存储设备与网络设备都已经实现之后,开发者就可以根据具体的项目需求开发所需的各类设备驱动。