疯壳-鸿蒙OS-HDF驱动框架

一、简介

HDF(HarmonyOS Driver Foundation)驱动框架,为驱动开发者提供驱动框架能力,包括驱动加载、驱动服务管理和驱动消息机制。旨在构建统一的驱动架构平台,为驱动开发者提供更精准、更高效的开发环境,力求做到一次开发,多系统部署。

 

驱动加载:

HDF驱动加载包括按需加载和按序加载:

1.驱动按需加载

HDF框架支持驱动在系统启动过程中默认加载,或者在系统启动之后动态加载。

2.驱动按序加载

HDF框架支持驱动在系统启动的过程中按照驱动的优先级进行加载。

 

驱动服务管理:

HDF框架可以集中管理驱动服务,开发者可直接通过HDF框架对外提供的能力接口获取驱动相关的服务。

 

驱动消息机制:

HDF框架提供统一的驱动消息机制,支持用户态应用向内核态驱动发送消息,也支持内核态驱动向用户态应用发送消息。

 

二、驱动模型

HDF框架以组件化的驱动模型作为核心设计思路,为开发者提供更精细化的驱动管理,让驱动开发和部署更加规范。HDF框架将一类设备驱动放在同一个host里面,开发者也可以将驱动功能分层独立开发和部署,支持一个驱动多个node,HDF框架管理驱动模型如下图所示:

三、驱动开发实例

接下来几个课程中,我们将手把手带大家进行鸿蒙OS驱动开发,具体内容涉及:

  1. 驱动添加
  2. 驱动服务管理
  3. 驱动消息机制

此外这个过程中还会设计到HCS(HDF驱动框架配置描述)等内容。

 

本文档接下来的内容会先给大家讲解如何添加驱动。

四、鸿蒙OS驱动添加

 

A)在源码路径:/home/test/hmos2/vendor/huawei/hdf下创建一个test文件夹,用来保存我们新添的驱动文件,如下:

B)在test文件夹下新建一个sample_driver.c的驱动文件,并编写我们的驱动代码,如下:

Ps:源码具体内容在后文附上!

 

D)此时驱动文件默认是不参与编译的,接下来我们需要做一下驱动文件编译必要的配置工作:

  1. 添加驱动配置信息

驱动配置分为两个部分——HDF框架定义的驱动设备描述和驱动的私有配置信息

 

驱动设备描述:

HDF框架加载驱动所需要的信息来源于HDF框架定义的驱动设备描述,因此该项是驱动添加的必选项,我

们需要在HDF框架定义的配置文件中添加对应的设备描述,打开源码路径:

vendor/hisi/hi35xx/hi3518ev300/config/device_info/

下的device_info/device_info.hcs文件,新添我们的设备驱动描述信息。

此处设备描述信息添加有两种方式,第一种是新建一个sample_host节点:

sample_host :: host

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值