一种添加输入设备驱动的系统以及方法
技术领域
本发明涉及通信技术领域,特别是涉及一种添加输入(input)设备驱动的系统以及方法。
背景技术
当今的Android手机,用的是Anroid操作系统,而linux作为Android操作系统的一部分,起到驱动基本硬件的功能,而如今有Android越来越多的加入一些外围设备,这一方面使得手机的功能更加丰富,另一方面也加大了开发者的工作量。
在当前android手机开发环境下,需要经常添加诸如触摸屏、重力传感器、方向传感器等input设备。添加一个输入(input)设备驱动,通常是通过人工一个一个文件进行手动的添加,由于添加文件的个数比较多往往可能会出现遗漏的情况。
而通常移植一个驱动,需要更改多个文件,会经常遇到遗漏添加某个文件的问题,导致再次编译,再次查找,花费大量精力和时间,无形中增加工作人员的劳动强度,降低了工作效率。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种添加输入(input)设备驱动的系统以及方法,用于解决现有技术中添加input设备过程中由于添加文件的个数比较多,可能会出现遗漏的问题。
为实现上述目的及其他相关目的,本发明提供一种添加输入设备驱动的系统,包括:配置模块,用于确定输入设备驱动的文件名以及操作系统内核所需编译的定义配置;查找模块,用于查找Makefile与Kconfig文件;追加模块,其通过指令截取所述输入设备驱动的文件名,利用指令将驱动相关设置追加到所述Makefile与Kconfig文件中。
于本发明的一实施方式中,所述添加输入设备驱动的系统还包括解析加入模块,用于将相关指令解析加入至所述定义配置中。
于本发明的一实施方式中,所述截取所述输入设备驱动的文件名的指令包括检索目标行指令和编辑指令。
于本发明的一实施方式中,所述将驱动相关设置追加到所述Makefile与Kconfig文件中的指令包括搜索指令和应答指令。
于本发明的一实施方式中,所述添加输入设备驱动的系统应用于Anrioid操作系统的智能手机或平板电脑中。
本发明还提供一种添加输入设备驱动的方法,包括以下步骤:S1:配置模块确定输入设备驱动的文件名以及操作系统内核所需编译的定义配置;S2:在驱动源文件目录下,查找模块查找Makefile与Kconfig文件;S3:追加模块通过检索目标行、编辑指令截取所述输入设备驱动的文件名,利用搜索、应答指令将驱动相关设置追加到所述Makefile与Kconfig文件中。
于本发明的一实施方式中,所述添加输入设备驱动的方法还包括:S4:解析添入模块向所述定义配置解析加入相关指令。
于本发明的一实施方式中,所述添加输入设备驱动的方法仅一个脚本文件中确定输入设备驱动的文件名与定义配置。
于本发明的一实施方式中,所述添加输入设备驱动的方法在一个脚本文件中完成驱动代码的添加工作。
如上所述,本发明的添加输入设备驱动的系统以及方法,具有以下有益效果:
本发明根据需要添加的驱动文件名,进行自动解析各个文件,并自动添加相应的内容;本发明仅一个脚本文件中确定输入设备驱动的文件名与定义配置,完成驱动代码的添加工作,达到自动化添加驱动文件的功能,减小可能出现的文件遗漏问题的概率,大大提高工作效率。
附图说明
图1显示为本发明的添加输入设备驱动的系统以及方法于一实施例中添加输入设备驱动的系统组成框图。
图2显示为本发明添加输入设备驱动的系统以及方法于一实施例中添加输入设备驱动的方法的流程示意图。
元件标号说明
1添加输入设备驱动的系统
11配置模块
12查找模块
13追加模块
14解析加入模块
S1~S4步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
请参阅图1、图2。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明提供一种添加输入设备驱动的系统,该系统应用于Anrioid操作系统的智能手机或平板电脑,添加输入设备诸如触摸屏、重力传感器、方向传感器等input设备。由于添加input设备驱动需要修改的文件往往是固定的几个,而且添加的模式是一致的,该系统将需要添加的输入设备驱动文件名,进行自动解析各个文件,并自动添加相应的内容,达到自动化添加。于实施方式中,其包括:配置模块、查找模块和追加模块。
其中,配置模块用于确定输入(input)设备驱动的文件名以及操作系统内核(kernel)所需编译的定义配置(defconfig)。
其中,查找模块用于在驱动源文件目录下查找Makefile与Kconfig文件;于本实施例中,实施Makefile文件为一个文本形式的文件,其中包含一些规则告诉make编译的文件以及如何编译这些文件;所述Kconfig为一个文本形式的文件,其中主要作用是在内核配置时候,作为配置选项。
其中,追加模块通过指令截取输入设备驱动的文件名中.config前部分,利用指令将驱动相关设置追加到Makefile与Kconfig文件中。.config文件是在进行内核配置的时候,经过配置后生成的内核编译参考文件,于实施方式中,截取输入设备驱动的文件名的指令包括检索目标行(grep)指令和编辑(sed)指令等,将驱动相关设置追加到Makefile与Kconfig文件中的指令包括搜索(find)指令和应答(echo)指令等。
请参阅图1,图1显示为实施例中添加输入设备驱动的系统组成框图。在实施例中,添加输入设备驱动的系统1除了包括配置模块11、查找模块12和追加模块13,还包括解析加入模块14,解析加入模块14用于将相关指令解析加入至定义配置(defconfig)中。解析加入模块14将涉及的截取输入设备驱动的文件名的指令,比如检索目标行(grep)指令和编辑(sed)指令,还有驱动相关设置追加到Makefile与Kconfig文件中的指令,比如搜索(find)指令和应答(echo)指令等均解析加入至定义配置中,保存。
本发明提供一种添加输入设备驱动的方法,该方法应用于Anrioid操作系统的智能手机或平板电脑,用于添加比如触摸屏、重力传感器、方向传感器等input设备。该方法仅一个脚本文件中确定输入设备驱动的文件名与定义配置,完成驱动代码的添加工作,大大提高工作效率。
请参阅图2,图2显示是添加输入设备驱动的方法的流程示意图,本实施例中,添加输入设备驱动的方法包括以下步骤:
开始;
首先执行步骤S1:配置模块确定输入(input)设备驱动的文件名以及操作系统内核所需编译的定义配置(defconfig);
然后执行步骤S2:在驱动源文件目录下,查找模块查找Makefile与Kconfig文件;
接着执行步骤S3:追加模块通过检索目标行(grep)、编辑(sed)指令截取文件名中.config前部分,利用搜索(find)、应答(echo)指令将驱动相关设置追加到Makefile与Kconfig文件中;
Kconfig对应内核的配置选项,如果想添加新的输入设备驱动到内核的源码中,需修改Kconfig,才能够选择这个输入设备驱动,如果使这个输入设备驱动被编译,需修改内核配置Makefile。所以,添加新的输入设备驱动时需要修改两种文件Kconfig和Makefile。
最后执行步骤S4:解析添入模块向定义配置(defconfig)解析加入相关指令。解析添入模块将步骤S3中涉及的检索目标行(grep)、编辑(sed)指令、搜索(find)、应答(echo)指令等均解析加入至定义配置中,保存。
结束:完成输入设备驱动的编译。
本发明根据需要添加的驱动文件名,进行自动解析各个文件,并添加相应的内容;本发明仅一个脚本文件中确定输入设备驱动的文件名与定义配置,完成驱动代码的添加工作,达到自动化添加驱动文件的功能,减小可能出现的文件遗漏问题的概率,大大提高工作效率。
综上所述,本发明自动添加输入(input)设备驱动的系统以及方法,解决了人工手动添加文件过程中,由于添加文件的个数比较多,可能会出现遗漏的缺点,提高了工作效率。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。