[发明专利]一种基于微内核的硬件设备驱动系统及其驱动方法有效
申请号: | 202110810358.0 | 申请日: | 2021-07-19 |
公开(公告)号: | CN113268275B | 公开(公告)日: | 2021-09-28 |
发明(设计)人: | 张昆;廖元垲;王大维 | 申请(专利权)人: | 成都菁蓉联创科技有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F9/54 |
代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 李林合 |
地址: | 610041 四川省成都市中国(四川)自由贸*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 内核 硬件 设备 驱动 系统 及其 方法 | ||
本发明公开了一种基于微内核的硬件设备驱动系统及其驱动方法,其系统包括底层驱动层、设备抽象层、一致性API层、远程过程调用层和设备管理器;底层驱动层用于实现对设备的各种操作;设备抽象层用于提供封装接口;一致性API层用于对封装接口进行二次封装;远程过程调用层用于进行封装接口和用户接口之间的远程过程调用通信;设备管理器用于管理设备信息、管理设备运行信息和管理设备驱动。本发明的硬件设备驱动方法大大降低了驱动程序编码的复杂度,提高了驱动代码的可读性,减少了驱动开发人员的驱动开发时间,最终达到了降低研发成本的效果。
技术领域
本发明属于设备驱动技术领域,具体涉及一种基于微内核的硬件设备驱动系统及其驱动方法。
背景技术
Linux中,针对不同种类的设备设计了不同的驱动实现,这样的驱动实现是把不同厂家的同类硬件驱动中相同的部分抽出来自己实现,再把不同的部分留出接口给具体的驱动开发工程师来实现,从而实现驱动的标准化。内核中也设计了一些统一管理系统资源的体系,这些体系让内核能够对各个驱动之间使用的资源进行统一协调和分配,从而保证系统的稳定健康运行。
通过以上描述可以看出,内核的驱动框架就是它提供的一些特定的接口函数和一些特定的数据结构。Linux的驱动集成在内核中,由内核统一管理。Linux内核使用platform平台总线机制来进行驱动的管理与注册,platform平台总线是一条虚拟的总线,并不是一个物理的总线。platform平台总线最重要的两个结构体是platform_device和platform_driver。这两个结构体分别管理驱动设备和驱动总线,platform_device结构体中包括设备名称、设备ID、资源结构个数、设备资源等信息,其中的resource结构体存入了最为重要的设备资源信息,包括资源起始地址、资源结束地址、资源类型等;platform_driver结构体中包括注册平台设备时被调用的设备探测函数、注销平台设备时被调用的删除函数、设备驱动结构体、该设备驱动支持的设备的列表等。
Linux的bus-driver-device框架是目前普遍使用的驱动框架。Linux的bus-driver-device框架的物理依据是外部设备通过总线与cpu进行通讯。内核负责实现该框架中的总线规范以及设备管理(包括设备检测、驱动绑定等)的部分,驱动程序负责注册自己的驱动,实现对设备的读写控制。以bus-driver-device的方式工作的驱动通常分为两个层次:总线子系统、驱动模块。bus-driver-device这一驱动框架并没有定义Linux各个具体的驱动具体的实现方式,即代码设计与组织的方式。Linux驱动框架的driver部分,即驱动部分的框架,在Linux内核代码的driver/base目录下做出了定义,Linux的驱动都有各自的架构方式,它们的各类架构被称为“子系统”,这些子系统的代码位于内核的driver/base目录下。现有的Linux内核的bus-driver-device驱动框架的缺点如下:第一,与内核代码组织在一起,可移植性较低,安全性较低,若驱动模块崩溃,会对内核造成影响;第二,各类驱动代码以不同方式组织在内核中,代码复杂度较高,增大了开发和移植的难度与成本。
发明内容
本发明的目的是为了解决现有驱动框架复杂且安全性较低的问题,提出了一种基于微内核的硬件设备驱动系统及其驱动方法。
本发明的技术方案是:一种基于微内核的硬件设备驱动系统,包括底层驱动层、设备抽象层、一致性API层、远程过程调用层和设备管理器;
底层驱动层用于实现对设备的各种操作;
设备抽象层用于提供底层驱动操作的封装接口;
一致性API层用于对设备抽象层的封装接口进行二次封装,提供用户接口;
远程过程调用层用于进行设备抽象层的封装接口和一致性API层的用户接口之间的远程过程调用通信,且通过客户端和服务端之间的远程过程调用通信实现用户对设备驱动的调用;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都菁蓉联创科技有限公司,未经成都菁蓉联创科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110810358.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:数据压缩方法及装置
- 下一篇:一种矿用隧道勘测用钻进设备及使用方法