Document
拖动滑块完成拼图
个人中心

预订订单
服务订单
发布专利 发布成果 人才入驻 发布商标 发布需求

在线咨询

联系我们

龙图腾公众号
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索
当前位置 : 首页 > 专利喜报 > 恭喜北京计算机技术及应用研究所高艳鹍获国家专利权

恭喜北京计算机技术及应用研究所高艳鹍获国家专利权

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

龙图腾网恭喜北京计算机技术及应用研究所申请的专利一种硬件兼容性知识库构建方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN110716873B

龙图腾网通过国家知识产权局官网在2023-09-26发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:201910903233.5,技术领域涉及:G06F11/36;该发明授权一种硬件兼容性知识库构建方法是由高艳鹍;安恒;陈鹏;陶金龙设计研发完成,并于2019-09-24向国家知识产权局提交的专利申请。

一种硬件兼容性知识库构建方法在说明书摘要公布了:本发明涉及一种硬件兼容性知识库构建方法,涉及硬件兼容性测试技术领域。本发明基于对驱动模块在操作系统中运行的原理以及操作系统内核导出信息的分析,总结了硬件的驱动模块运行在操作系统上所需的依赖要素,创建硬件兼容性知识库并在知识库中添加内核信息、运行依赖要素信息的知识项;通过在硬件设备运行过程中对其驱动模块的运行过程进行监控,得到其驱动模块的接口调用信息并存入知识库,形成设备信息、驱动模块、内核版本信息、接口调用信息的知识项。该方法能够为国产操作系统的硬件兼容性提供测试手段以及必要的测试信息,实现国产操作系统升级后在没有硬件设备的情况下进行硬件兼容性测试,有利于推动国产操作系统的兼容性测试技术发展。

本发明授权一种硬件兼容性知识库构建方法在权利要求书中公布了:1.一种硬件兼容性知识库构建方法,其特征在于,包括以下步骤:第一步分析驱动模块运行原理,确定驱动模块运行时对操作系统内核的依赖要素;第二步获取所述依赖要素以构建硬件兼容性知识库;第三步向所述知识库中添加驱动模块动态依赖项;第一步中,首先对驱动模块在操作系统中运行时所调用操作系统内核的接口构成进行分析,确定硬件兼容性的依赖要素,使得在构建硬件兼容性知识库时能够搜集到这些依赖要素并对依赖要素进行分级;第一步中,确定所述依赖要素包括内核版本、内核导出函数签名和结构体定义;第二步中,收集已有的操作系统内核开发资源,从开发资源中提取得到驱动模块对内核的依赖要素,在知识库中添加操作系统内核信息、依赖要素构成的知识项,将知识项添加到构建的知识库中;第二步中,所述知识项设计为包括操作系统内核版本号、驱动开发依赖的头文件、头文件内的函数声明以及结构体定义;第二步中,收集所述依赖要素的流程包括以下步骤:第1步,收集已有版本的操作系统内核开发资源,这些资源以开发包的形式存在,不同的发行厂商、处理器架构、内核版本号三种信息作为一个独立的知识项集合;第2步,从内核开发相关的头文件中自动提取所有的函数签名以及结构体定义,得到根据头文件构造出的知识项列表;第3步,通过在prockallsyms文件中能够查询到内核对外提供服务的所有导出函数符号,将内核内部调用函数的非直接依赖要素项与导出函数符号进行匹配以进一步获取依赖要素项,从第2步得到的所有函数声明中以kallsyms文件中列出的属性为T或t的函数符号名进一步提取,形成不同内核版本的知识集合,每个知识集合中包括函数签名、结构体声明信息;第三步中,在存在已知外设硬件的情况下,在内核中加载驱动模块监控模块,对硬件使用时驱动模块的运行过程进行监控,获得驱动模块的接口调用信息;利用kprobe技术定义自己的回调函数,然后在静态扫描得到的驱动模块依赖的函数中动态地插入探测点,当内核执行流程执行到指定的探测函数时,调用该回调函数,收集所需的信息,同时内核回到原本的正常执行流程;第三步具体为:首先通过ELF文件格式扫描硬件对应的驱动模块,获得其所有调用的接口函数符号名,不包括签名信息;将静态扫描获得的调用接口名设置为探测点,kprobe备份被探测点的对应指令,然后将原始指令的入口点替换为断点指令;当驱动模块运行过程中,CPU执行到探测点的断点指令时,就触发了一个陷阱trap,trap保存当前CPU的寄存器信息并调用对应的trap处理函数,该处理函数设置kprobe的调用状态并调用注册的pre_handler回调函数,kprobe向该函数传递注册的structkprobe结构地址以及保存的当前CPU寄存器信息;kprobe单步执行前面所拷贝的被探测指令;在单步执行完成后,kprobe执行用户注册的post_handler回调函数,根据运行地址查询prockallsyms返回程序调用的函数符号名称,并记录当前执行的函数符号名;最后,执行流程回到被探测指令之后的驱动模块正常流程继续执行;这样通过对Kprobe技术的使用,就监控到驱动模块运行时的接口调用信息,进而向知识库中添加由硬件、驱动模块、驱动模块的接口调用信息组成的知识项组成的知识项;并通过与第二步获得的知识项关联,最终得到硬件对操作系统内核的动态依赖项,具体为硬件名,驱动模块,操作系统发布厂商,处理器架构,操作系统内核版本号,调用内核函数签名,结构体定义的知识项。

如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人北京计算机技术及应用研究所,其通讯地址为:100854 北京市海淀区永定路51号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。