[发明专利]设备驱动调用方法、装置及系统在审
申请号: | 202111526253.9 | 申请日: | 2021-12-14 |
公开(公告)号: | CN114237725A | 公开(公告)日: | 2022-03-25 |
发明(设计)人: | 李晨阳;辛旭 | 申请(专利权)人: | 龙芯中科技术股份有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 虞浩;臧建明 |
地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 设备 驱动 调用 方法 装置 系统 | ||
本申请提供一种设备驱动调用方法、装置及系统。该方法,通过用户态内存中的应用程序通过第一调用函数向内核态中的设备驱动发送设备信息获取命令,以使得内核态内存中的设备驱动响应于设备信息获取命令,通过第二调用函数向用户态内存中的应用程序发送设备信息,以使得在用户态内存可以通过相应的函数调用来获取内核态内存中的设备信息,从而使得运行于嵌入式操作系统中的软件程序可以通过设备信息调用设备驱动。
技术领域
本申请涉及计算机技术领域,尤其涉及一种设备驱动调用方法、装置及系统。
背景技术
目前,在一些嵌入式操作系统(例如:VxWorks操作系统或RT-Linux操作系统)中,对内存进行了划分,一部分为内核态内存,另一部分为用户态内存。
其中,内核态内存与用户态内存存在于不同的内存空间中,嵌入式操作系统占据内核态内存空间,应用程序占据用户态内存空间。操作系统可以同时访问内核态内存与用户态内存,而应用程序只能访问用户态内存空间。其中,驱动程序是运行在内核态中,例如,在对内核态中的驱动程序进行调用时,需要先进行设备信息的获取。
然而,在目前的嵌入式操作系统,驱动程序中只能根据事先配置好的设备信息执行对应的驱动函数,而用户态内存中的应用程序却无法获取设备信息。因此,如何获取内核态内存中的设备信息成为亟待解决的问题。
发明内容
本申请提供一种设备驱动调用方法、装置及系统,用以实现用户态内存中应用程序可以获取到内核态内存中的设备信息。
第一方面,本申请提供一种设备驱动调用方法,应用于嵌入式操作系统,所述嵌入式操作系统包括内核态内存以及用户态内存,所述方法包括:
所述用户态内存中的应用程序通过第一调用函数向所述内核态中的设备驱动发送设备信息获取命令;
所述内核态内存中的所述设备驱动响应于所述设备信息获取命令,通过第二调用函数向所述用户态内存中的所述应用程序发送设备信息,以使运行于所述嵌入式操作系统中的软件程序通过所述设备信息调用所述设备驱动。
在一种可能的设计中,在所述通过第二调用函数向所述用户态中的所述应用程序发送设备信息之前,还包括:
在对所述设备驱动进行初始化过程中,遍历外设部件互连标准PCI设备,并读取每一个所述PCI设备的设备标识码;
根据所述设备标识码确定目标设备,并获取所述目标设备对应的所述设备信息,所述设备驱动用于驱动所述目标设备。
在一种可能的设计中,所述的设备驱动调用方法,还包括:
当检测到在PCI插槽上对所述目标设备进行插拔时,启动对所述设备驱动的初始化操作。
在一种可能的设计中,所述根据所述设备标识码确定目标设备,包括:
根据每一个所述PCI设备的设备标识码中的设备类型信息确定对应的设备类型;
确定所述设备类型符合预设类型的PCI设备为所述目标设备。
在一种可能的设计中,所述设备驱动为显卡驱动。
在一种可能的设计中,所述第一调用函数与所述第二调用函数为所述设备驱动中对对应设备的I/O通道进行管理的函数。
在一种可能的设计中,在所述通过第二调用函数向所述用户态中的所述应用程序发送设备信息之后,还包括:
运行于所述嵌入式操作系统中的图像处理程序通过利用显卡信息,并通过所述应用程序调用显卡驱动,以驱动当前设置于PCI插槽上显卡显示经所述图像处理程序处理后的图像,所述设备信息包括所述显卡信息,所述设备驱动包括所述显卡驱动。
第二方面,本申请提供一种设备驱动调用装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术股份有限公司,未经龙芯中科技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111526253.9/2.html,转载请声明来源钻瓜专利网。