[发明专利]一种基于树形拓扑结构的设备管理方法在审
申请号: | 201611168617.X | 申请日: | 2016-12-16 |
公开(公告)号: | CN106844260A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 周立功 | 申请(专利权)人: | 广州致远电子股份有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40;G06F13/38;G06F13/42 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 张春水,唐京桥 |
地址: | 510000 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 树形 拓扑 结构 设备管理 方法 | ||
技术领域
本发明涉及设备管理领域,尤其涉及一种基于树形拓扑结构的设备管理方法。
背景技术
在当前针对MCU(微处理器)的嵌入式软件开发领域,对于设备的控制,通常是应用软件直接操作寄存器的方式来控制,如此,软件开发人员既要编写应用逻辑,又要阅读动则上千页的硬件手册来编写驱动软件(控制硬件设备的软件),这些驱动软件只针对具体的外设编写,没有统一的管理,这样的驱动软件很难复用。
对于基于RTOS(实时操作系统)的软件,RTOS可能会提供简单的设备管理,通常定义了open、read、write、ioctl、close这五个标准函数用于设备的控制。相比直接操作寄存器,这种简单的设备管理对不同设备进行了统一管理,同时也隔离了应用软件和驱动软件,应用软件只需调用五个标准的控制函数,而驱动软件只需实现这五个标准控制函数,然后注册到设备管理就可以了。这种简单的设备管理方式对于MCU片内的设备管理比较有效,而对于MCU外扩的设备则不能有效管理,其根本问题在于这些设备是独立管理的,相互之间没有关联。
发明内容
本发明实施例提供了一种基于树形拓扑结构的设备管理方法,解决了现有技术中针对MCU的设备管理缺乏统一的管理,无法形成可广泛适用、有效管理MCU设备的设备管理方法。
本发明实施例提供的一种基于树形拓扑结构的设备管理方法,包括:
S1、对设备管理模块进行初始化;
S2、通过设备管理模块创建根总线控制器;
S3、通过根总线控制器枚举根总线上的设备作为根总线设备添加至设备管理模块,若根总线设备为总线控制器则执行S4步骤;
S4、根据总线控制器创建总线,枚举总线上的设备作为总线设备添加至设备管理模块,若总线设备为总线控制器,则重复S4步骤,直到总线上没有总线控制器。
优选地,步骤S4具体包括:
S41、根据总线控制器创建总线,并查找总线上的设备,若发现新设备,则创建设备成为总线设备,并设置总线设备的父总线为总线控制器的子总线;
S42、添加总线设备至设备管理模块,并查找与总线设备匹配的驱动,若找到匹配的驱动,将匹配的驱动关联到总线设备上,并将总线设备添加到总线设备的父总线的已知设备列表,并执行总线设备的初始化方法;若总线设备为总线控制器,则视为总线控制器设备,并重复S41和S42步骤,直到总线上没有总线控制器。
优选地,还包括:
S5、将驱动添加到设备管理模块的驱动列表中,并遍历相同总线类型的设备,若找到未知设备,则将驱动与未知设备进行匹配,若匹配,则将未知设备从未知设备的父总线上的未知设备列表中删除,并将未知设备添加到未知设备的父总线上的已知设备列表中。
优选地,还包括:
S6、将总线类型添加到设备管理模块的总线类型列表中,遍历所有未知总线,并将遍历找到的未知总线添加到设备管理模块进行添加总线;
添加总线包括将总线控制器与总线相互关联,并查找与总线匹配的总线类型,若找到匹配的总线类型,则将总线类型关联到总线,并将总线添加到总线类型的总线列表中;再遍历总线上的未知设备,在设备管理模块的驱动列表中查找与未知设备相匹配的驱动,若匹配,则将未知设备从未知设备的父总线上的未知设备列表中删除,并将未知设备添加到未知设备的父总线上的已知设备列表中;
若未找到匹配的总线类型,则将总线添加到设备管理模块的未知总线列表中。
优选地,还包括:
通过总线控制器进行移除设备和移除总线;
移除设备包括:若移除的设备为已知设备时,调用设备的卸载方法,并将设备从设备的父总线的已知设备列表中删除;若移除的设备为总线控制器时,先移除总线控制器的总线,再移除总线控制器;
若移除的设备为未知设备时,将设备从设备的总线的未知设备列表中删除,并释放设备占用的内存资源;
移除总线包括:遍历总线的已知设备列表和未知设备列表,若找到设备,则将设备从设备管理模块中移除,再将总线从总线类型的总线列表中删除,解除总线与总线控制器的关联,释放总线占用的内存等资源。
优选地,还包括:
查找设备,查找设备具体包括:在设备管理模块中获取一个总线类型,根据总线类型获取一个总线,根据总线获取一个设备,并检查设备的设备名和单元号是否与所需查找的设备的设备名和单元号匹配,若匹配则结束查找设备,否则重新进行查找设备。
优选地,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州致远电子股份有限公司,未经广州致远电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611168617.X/2.html,转载请声明来源钻瓜专利网。