CN105068792B - 一种驱动设备管理方法及嵌入式系统 - Google Patents

一种驱动设备管理方法及嵌入式系统 Download PDF

Info

Publication number
CN105068792B
CN105068792B CN201510416566.7A CN201510416566A CN105068792B CN 105068792 B CN105068792 B CN 105068792B CN 201510416566 A CN201510416566 A CN 201510416566A CN 105068792 B CN105068792 B CN 105068792B
Authority
CN
China
Prior art keywords
equipment
driving
embedded system
information
managemen
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510416566.7A
Other languages
English (en)
Other versions
CN105068792A (zh
Inventor
黄金钰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN INCAR TECHNOLOGY Co.,Ltd.
Original Assignee
Shanghai Feixun Data Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201510416566.7A priority Critical patent/CN105068792B/zh
Publication of CN105068792A publication Critical patent/CN105068792A/zh
Application granted granted Critical
Publication of CN105068792B publication Critical patent/CN105068792B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种驱动设备管理方法及嵌入式系统,属于嵌入式系统技术领域;方法包括:于嵌入式系统中预先设定一设备链表,设备链表中包括对应每个驱动设备的驱动结构信息,每个驱动结构信息中包括对应的驱动设备的序号;于嵌入式系统中预先划定一存储区域,并于存储区域内预先保存针对不同的驱动设备的设备信息,设备信息中包括驱动设备的序号以及相应的具体实现信息;随后根据外部输入的调用请求匹配并获取驱动结构信息,进而调用具体实现信息以进行驱动设备的读写控制。上述技术方案的有益效果是:实现嵌入式系统的驱动设备的统一管理,节省系统资源,避免驱动设备混乱管理造成的各种不便。

Description

一种驱动设备管理方法及嵌入式系统
技术领域
本发明涉及嵌入式系统技术领域,尤其涉及一种驱动设备管理方法及嵌入式系统。
背景技术
现有技术中,嵌入式系统往往连接数量众多的驱动设备,驱动设备的功能不同决定了嵌入式系统所应用的技术领域的不同。对于没有移植操作系统(Operating System,OS)的嵌入式系统而言,对于驱动设备的管理可能会比较混乱,特别是在驱动设备数量较多的情况下,因此可能会在管理过程中浪费系统资源,降低管理效率,为使用者管理驱动设备造成了许多不必要的麻烦。
发明内容
根据现有技术中存在的问题,现提供一种驱动设备管理方法及嵌入式系统的技术方案,旨在实现嵌入式系统的驱动设备的统一管理。
上述技术方案具体包括:
一种驱动设备管理方法,适用于嵌入式系统;其中,于所述嵌入式系统中预先设定一设备链表,所述设备链表中包括对应每个驱动设备的驱动结构信息,每个所述驱动结构信息中包括对应的所述驱动设备的序号;
于所述嵌入式系统中预先划定一存储区域,并于所述存储区域内预先保存针对不同的所述驱动设备的设备信息,所述设备信息中包括所述驱动设备的序号以及相应的具体实现信息;
所述驱动设备管理方法具体包括:
步骤S1,分别根据所述设备链表中的每个所述驱动结构信息对应的所述驱动设备的序号,匹配得到相应的所述设备信息;
步骤S2,将相匹配的所述设备信息中的所述具体实现信息填充入所述驱动结构信息中;
步骤S3,提供一接口供外部调用所述设备链表,以根据经过填充的所述驱动结构信息,对相应的所述驱动设备进行读写控制。
优选的,该驱动设备管理方法,其中,每个所述驱动结构信息中包括:
用于指示不同的所述具体实现信息的指针函数;以及
用于指示对应于所述设备链表中的下一个所述驱动设备的所述驱动结构信息的指针函数。
优选的,该驱动设备管理方法,其中,所述具体实现信息包括:
相应的设备初始化函数于所述嵌入式系统中的存储地址;和/或
相应的设备开启函数于所述嵌入式系统中的存储地址;和/或
相应的设备读取函数于所述嵌入式系统中的存储地址;和/或
相应的设备写入函数于所述嵌入式系统中的存储地址。
优选的,该驱动设备管理方法,其中,所述步骤S1中,若所述存储区域中存在有所述设备信息不匹配于任何一个所述驱动结构信息,则将所述设备信息从所述存储区域中删除。
优选的,该驱动设备管理方法,其中,通过向所述嵌入式系统中注册相应的所述驱动设备,以在所述设备链表中设置相应的所述驱动结构信息。
优选的,该驱动设备管理方法,其中,所述步骤S3具体包括:
步骤S31,通过所述接口获取外部输入的调用请求;
步骤S32,根据所述调用请求中包括的所述驱动设备的序号,查找并提取所述设备链表中的相应的所述驱动结构信息;
步骤S33,根据被提取的所述驱动结构信息,调用被填充的相应的所述设备信息,并进而调用相应的所述具体实现信息,以实现对所述驱动设备的相应的读写控制。
优选的,该驱动设备管理方法,其中,所述嵌入式系统中未移植相应的操作系统。
一种嵌入式系统,其中,采用上述的驱动设备管理方法。
上述技术方案的有益效果是:提供一种驱动设备管理方法,能够实现嵌入式系统的驱动设备的统一管理,节省系统资源,避免驱动设备混乱管理造成的各种不便。
附图说明
图1是本发明的较佳的实施例中,设备链表的示意图;
图2是本发明的较佳的实施例中,存储区域的示意图;
图3是本发明的较佳的实施例中,一种驱动设备管理方法的总体流程示意图;
图4是本发明的较佳的实施例中,于上述图3的基础上,其中步骤S4的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本发明的较佳的实施例中,基于现有技术中存在的上述问题,现提供一种驱动设备管理方法,其适用于嵌入式系统。进一步地,本发明的较佳的实施例中,上述驱动设备管理方法适用于没有移植OS的嵌入式系统。
本发明的较佳的实施例中,于上述嵌入式系统中,预先设定一设备链表,设备链表中包括对应每个驱动设备的驱动结构信息,每个驱动结构信息中包括对应的驱动设备的序号。
具体地,本发明的较佳的实施例中,如图1所示,上述嵌入式系统中,预先设定一设备链表。所谓链表,其为一种在物理存储单元上非连续、非顺序的存储结构,在链表中,数据元素的逻辑顺序通过链表中的指针链接次序实现。因此,如图1所示,在嵌入式系统中预先设定的设备链表中,包括多个预先注册的驱动设备的相关信息。即使用者预先通过向嵌入式系统注册相应的驱动设备的信息的方式将其放入设备链表中包括。
本发明的较佳的实施例中,在设备链表中,包括对应每个驱动设备的驱动结构信息,每个驱动结构信息中包括对应的驱动设备的序号。换言之,如图1所示,在设备链表中,包括对应设备1的驱动结构信息、对应设备2的驱动结构信息、直至对应设备N的驱动结构信息。
本发明的较佳的实施例中,所谓驱动结构信息,即对应于每个驱动设备的驱动结构体变量信息。具体地,本发明的较佳的实施例中,一个驱动结构体变量信息以函数形式表达,可以为:
则可以从上述驱动结构体变量信息中看到,每个驱动结构信息中可以包括:
对应的驱动设备的序号(device_id);
用于指示不同的具体实现信息的指针函数:例如*init表示指示初始化函数的指针,*open表示指示开启驱动设备的函数的指针,*read表示指示对驱动设备进行读控制的函数的指针等。因此,本发明的其他实施例中,可以对上述函数形式进行进一步扩展,以容纳更多的指向不同类型的函数的指针;以及
用于指示对应于设备链表中的下一个驱动设备的驱动结构信息的指针函数(*next)。
本发明的较佳的实施例中,依照上文中所述的指向下一个驱动结构信息的指针函数依次进行,可以串起整个设备链表,即形成设备链表。
本发明的较佳的实施例中,上述嵌入式系统中,还可以包括一存储区域。进一步地,本发明的较佳的实施例中,上述存储区域可以为嵌入式系统的存储单元中划分出的一个存储段(Section)。本发明的较佳的实施例中,在上述存储区域内预先保存针对不同的驱动设备的设备信息。
本发明的较佳的实施例中,每个设备信息中包括驱动设备的序号以及相应的具体实现信息。
具体地,本发明的较佳的实施例中,如图2所示,在上述存储区域内,对于每个驱动设备都添加带有驱动设备ID和其他具体实现信息的结构体数据。例如,对于设备1,添加ID,以及设备初始化函数地址、设备开启函数地址、设备读取函数地址以及设备写入函数地址等等。
本发明的较佳的实施例中,如上文中所述,所谓具体实现信息,即指示如何对驱动设备进行具体的控制。则具体地,上述具体实现信息,可以包括
相应的设备初始化函数于所述嵌入式系统中的存储地址;
相应的设备开启函数于所述嵌入式系统中的存储地址;
相应的设备读取函数于所述嵌入式系统中的存储地址;
相应的设备写入函数于所述嵌入式系统中的存储地址。
本发明的较佳的实施例中,最终的处理函数(设备初始化函数,设备开启函数、设备读取函数以及设备写入函数等)可能存放在嵌入式系统的其他存储区域内,嵌入式系统可以读取具体实现信息,并从中得知相应的处理函数的存储地址,并进而读取相应的处理函数并执行。
则本发明的较佳的实施例中,如图3所示,上述驱动设备管理方法具体包括:
步骤S1,分别根据设备链表中的每个驱动结构信息对应的驱动设备的序号,匹配得到相应的设备信息;
本发明的较佳的实施例中,上述步骤S1具体可以为:选择设备链表中的一个驱动结构信息,并提取相应的驱动设备序号;根据该驱动设备序号匹配并查找上述存储区域内具有相应的驱动设备序号的设备信息。
本发明的较佳的实施例中,根据上述步骤,将设备链表中的所有驱动结构信息都匹配完毕后,表示整个设备链表匹配完毕。
本发明的较佳的实施例中,若整个设备链表匹配完毕后,在存储区域内仍然存在有设备信息无法匹配任何一个驱动结构信息的,则将该设备信息从存储区域内删除,以对存储区域进行维护。
步骤S2,将相匹配的设备信息中的具体实现信息填充入驱动结构信息中;
本发明的较佳的实施例中,如上文中所述,具体实现信息可以包括不同类型的实现函数的存储地址。则将其填充入驱动结构信息中对应的指针函数中。例如将设备初始化函数的地址填充入void(*init)(struct device*dev)中,使得指针函数可以指向设备初始化函数的存储地址。
步骤S3,提供一接口供外部调用设备链表,以根据经过填充的驱动结构信息,对相应的驱动设备进行读写控制。
本发明的较佳的实施例中,如图4所示,上述步骤S3具体包括:
步骤S31,通过接口获取外部输入的调用请求;
本发明的较佳的实施例中,当完成上述步骤S1-S2的操作之后,就相当于在嵌入式系统中预先设置了一整套关联于驱动设备的驱动函数提取和执行的机制。则本发明的较佳的实施例中,上述步骤S31中,通过一个统一的外部接口,使用者可以输入调用请求,以请求调用相应的驱动设备的相应的驱动函数。换言之,通过一个统一的调用接口,嵌入式系统可以获取外部输入的调用请求。
步骤S32,根据调用请求中包括的驱动设备的序号,查找并提取设备链表中的相应的驱动结构信息;
本发明的较佳的实施例中,在设备链表中已经保存有经过填充的驱动结构信息,而在外部输入的调用请求中包括本次调用所需要的驱动设备的序号。因此,可以根据本次调用请求相关的驱动设备的序号去匹配查找设备链表中的驱动结构信息。
步骤S33,根据被提取的驱动结构信息,调用被填充的相应的设备信息,并进而调用相应的具体实现信息,以实现对驱动设备的相应的读写控制。
本发明的较佳的实施例中,通过匹配并提取对应于调用请求的驱动结构信息,并根据该驱动结构信息中包括的指针函数,读取相应被填充的设备信息(以得到相应的具体实现信息的存储地址),进而找到相应的具体实现信息(例如对设备进行初始化、开启设备、读取和写入等)并执行,以实现对驱动设备的读写控制。
本发明的较佳的实施例中,还提供一种嵌入式系统,其中采用上文中所述的驱动设备管理方法。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

Claims (7)

1.一种驱动设备管理方法,适用于嵌入式系统;其特征在于,于所述嵌入式系统中预先设定一设备链表,所述设备链表中包括对应每个驱动设备的驱动结构信息,每个所述驱动结构信息中包括对应的所述驱动设备的序号;
于所述嵌入式系统中预先划定一存储区域,并于所述存储区域内预先保存针对不同的所述驱动设备的设备信息,所述设备信息中包括所述驱动设备的序号以及相应的具体实现信息;
所述驱动设备管理方法具体包括:
步骤S1,分别根据所述设备链表中的每个所述驱动结构信息对应的所述驱动设备的序号,匹配得到相应的所述设备信息;
步骤S2,将相匹配的所述设备信息中的所述具体实现信息填充入所述驱动结构信息中;
步骤S3,提供一接口供外部调用所述设备链表,以根据经过填充的所述驱动结构信息,对相应的所述驱动设备进行读写控制;
所述步骤S3具体包括:
步骤S31,通过所述接口获取外部输入的调用请求;
步骤S32,根据所述调用请求中包括的所述驱动设备的序号,查找并提取所述设备链表中的相应的所述驱动结构信息;
步骤S33,根据被提取的所述驱动结构信息,调用被填充的相应的所述设备信息,并进而调用相应的所述具体实现信息,以实现对所述驱动设备的相应的读写控制。
2.如权利要求1所述的驱动设备管理方法,其特征在于,每个所述驱动结构信息中包括:
用于指示不同的所述具体实现信息的指针函数;以及
用于指示对应于所述设备链表中的下一个所述驱动设备的所述驱动结构信息的指针函数。
3.如权利要求1所述的驱动设备管理方法,其特征在于,所述具体实现信息包括:
相应的设备初始化函数于所述嵌入式系统中的存储地址;和/或
相应的设备开启函数于所述嵌入式系统中的存储地址;和/或
相应的设备读取函数于所述嵌入式系统中的存储地址;和/或
相应的设备写入函数于所述嵌入式系统中的存储地址。
4.如权利要求1所述的驱动设备管理方法,其特征在于,所述步骤S1中,若所述存储区域中存在有所述设备信息不匹配于任何一个所述驱动结构信息,则将所述设备信息从所述存储区域中删除。
5.如权利要求1所述的驱动设备管理方法,其特征在于,通过向所述嵌入式系统中注册相应的所述驱动设备,以在所述设备链表中设置相应的所述驱动结构信息。
6.如权利要求1所述的驱动设备管理方法,其特征在于,所述嵌入式系统中未移植相应的操作系统。
7.一种嵌入式系统,其特征在于,采用如权利要求1-6任一项所述的驱动设备管理方法。
CN201510416566.7A 2015-07-15 2015-07-15 一种驱动设备管理方法及嵌入式系统 Active CN105068792B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510416566.7A CN105068792B (zh) 2015-07-15 2015-07-15 一种驱动设备管理方法及嵌入式系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510416566.7A CN105068792B (zh) 2015-07-15 2015-07-15 一种驱动设备管理方法及嵌入式系统

Publications (2)

Publication Number Publication Date
CN105068792A CN105068792A (zh) 2015-11-18
CN105068792B true CN105068792B (zh) 2018-03-02

Family

ID=54498173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510416566.7A Active CN105068792B (zh) 2015-07-15 2015-07-15 一种驱动设备管理方法及嵌入式系统

Country Status (1)

Country Link
CN (1) CN105068792B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108009103B (zh) * 2017-11-28 2021-03-26 中国船舶重工集团公司第七一六研究所 一种VxWorks系统的PCI设备排序方法
CN108334546B (zh) * 2017-12-27 2021-11-30 上海未来宽带技术股份有限公司 通信设备融合管理方法、存储介质及通信设备
CN108683702B (zh) * 2018-04-06 2020-12-08 西北工业大学 一种物联设备接入互联网的即插即用的驱动方法
CN113535784B (zh) * 2021-08-10 2023-09-01 广州河东科技有限公司 一种智能网关子设备数据快速查找的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866202A (zh) * 2005-05-18 2006-11-22 大唐移动通信设备有限公司 嵌入式设备的驱动方法
CN101183310A (zh) * 2007-12-13 2008-05-21 华为技术有限公司 一种建立设备驱动的方法、设备驱动装置及单板
CN102129373A (zh) * 2011-03-09 2011-07-20 湖南超视物联智能网络科技有限公司 一种基于物联网终端设备驱动程序软件设计框架的方法
CN104461927A (zh) * 2014-12-11 2015-03-25 上海斐讯数据通信技术有限公司 一种电子装置及其配置信息存储与读取方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866202A (zh) * 2005-05-18 2006-11-22 大唐移动通信设备有限公司 嵌入式设备的驱动方法
CN101183310A (zh) * 2007-12-13 2008-05-21 华为技术有限公司 一种建立设备驱动的方法、设备驱动装置及单板
CN102129373A (zh) * 2011-03-09 2011-07-20 湖南超视物联智能网络科技有限公司 一种基于物联网终端设备驱动程序软件设计框架的方法
CN104461927A (zh) * 2014-12-11 2015-03-25 上海斐讯数据通信技术有限公司 一种电子装置及其配置信息存储与读取方法

Also Published As

Publication number Publication date
CN105068792A (zh) 2015-11-18

Similar Documents

Publication Publication Date Title
CN105068792B (zh) 一种驱动设备管理方法及嵌入式系统
US10048865B2 (en) Disk partition stitching and rebalancing using a partition table
CN100454257C (zh) 嵌入式系统
CN104102695B (zh) 智能设备启动过程的数据处理方法及智能设备
CN104238962B (zh) 向缓存中写入数据的方法及装置
CN110162525A (zh) 基于b+树的读写冲突解决方法、装置及存储介质
CN107577697A (zh) 一种数据处理方法、装置及设备
CN107526608A (zh) 一种ota升级包升级方法及设备
CN106503069A (zh) 文件共享方法及装置
CN104156226A (zh) 混合内存设备的挂起或关机方法
CN101000580A (zh) Nand闪存信息提取方法和nand闪存自动识别方法
CN108733324A (zh) 一种固态硬盘的数据读写方法、装置、设备及存储介质
CN104598161B (zh) 数据读取、写入方法和装置及数据存储结构
JP2006216027A5 (zh)
CN107391181A (zh) 一种系统分区的方法及装置
CN103020201B (zh) 一种存储系统自动精简配置存储池及组织管理的方法
CN107330009A (zh) 主题词分类模型创建方法、创建装置及存储介质
CN103064749B (zh) 一种进程间通信方法
CN106528441B (zh) 仿真eeprom的数据处理方法、装置及电子设备
CN102209016B (zh) 一种数据处理方法、装置和数据处理系统
CN104536780A (zh) 一种电子游戏资源高效加载方法及系统
CN104572224B (zh) 一种out文件加载方法、装置及系统
CN107577474A (zh) 升级文件的处理方法及装置、电子设备
CN107153561A (zh) 一种更新扩展卡中固件的方法、装置及系统
CN105204774B (zh) 一种数据处理方法及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201125

Address after: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou Jiji Intellectual Property Operation Co., Ltd

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Patentee before: Phicomm (Shanghai) Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20201221

Address after: 233000 3rd floor, Dong'an Market, Fengyang West Road, Longzihu District, Bengbu City, Anhui Province

Patentee after: Bengbu 309 Technology Consulting Co.,Ltd.

Address before: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Hangzhou Jiji Intellectual Property Operation Co., Ltd

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210207

Address after: 313001 room 1019, Xintiandi office building, Yishan street, Wuxing District, Huzhou, Zhejiang, China

Patentee after: Huzhou YingLie Intellectual Property Operation Co.,Ltd.

Address before: 233000 3rd floor, Dong'an Market, Fengyang West Road, Longzihu District, Bengbu City, Anhui Province

Patentee before: Bengbu 309 Technology Consulting Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210625

Address after: 518000 609-614, building 8, Zhongxi xiangbinshan garden, fenghuanggang community, Xixiang street, Bao'an District, Shenzhen City, Guangdong Province

Patentee after: SHENZHEN INCAR TECHNOLOGY Co.,Ltd.

Address before: 313001 room 1019, Xintiandi office building, Yishan street, Wuxing District, Huzhou, Zhejiang, China

Patentee before: Huzhou YingLie Intellectual Property Operation Co.,Ltd.

TR01 Transfer of patent right