CN102902638A - 硬件设备控制方法及驱动模块 - Google Patents
硬件设备控制方法及驱动模块 Download PDFInfo
- Publication number
- CN102902638A CN102902638A CN2011102104355A CN201110210435A CN102902638A CN 102902638 A CN102902638 A CN 102902638A CN 2011102104355 A CN2011102104355 A CN 2011102104355A CN 201110210435 A CN201110210435 A CN 201110210435A CN 102902638 A CN102902638 A CN 102902638A
- Authority
- CN
- China
- Prior art keywords
- driver module
- resource
- driving
- driver
- hardware device
- 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.)
- Granted
Links
- 230000000875 corresponding Effects 0.000 claims abstract description 46
- 230000001276 controlling effect Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000000034 method Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000006011 modification reaction Methods 0.000 description 3
- 230000000051 modifying Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
Images
Abstract
本发明公开了一种硬件设备控制方法及驱动模块,该方法包括步骤:硬件设备的第一驱动模块通过对应的虚拟设备接收控制操作信息,其中,所述第一驱动模块与所述硬件设备的第二驱动模块部署于同一驱动文件中;所述第一驱动模块根据接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源;并在确定出的驱动资源中,查找部署于所述第二驱动模块中的驱动资源;所述第一驱动模块从所述第二驱动模块中调用查找到的驱动资源;并根据部署于所述第一驱动模块中的驱动资源以及从第二驱动模块中调用的驱动资源,对所述硬件设备进行控制。采用本发明技术方案,解决了现有技术中存在的浪费了操作系统较多的存储资源及处理资源的问题。
Description
硬件设备控制方法及驱动模块
技术领域
[0001] 本发明涉及设备驱动技术领域,尤其涉及一种硬件设备控制方法及驱动模块。
背景技术
[0002] 计算机的操作系统用于管理计算机的硬件资源与软件资源,其架构如图I所示,包括应用层、内核层和驱动程序,其中:
[0003] 驱动程序与计算机的硬件设备对应,若硬件设备为声卡,则对应的驱动程序为声卡驱动程序,若硬件设备为磁盘,则对应的驱动程序为磁盘驱动程序,若硬件设备为网卡,则对应的驱动程序为网卡驱动程序,驱动程序与对应的硬件设备之间的接口为硬件接口 ;
[0004] 内核层包括系统调用接口、虚拟文件系统以及虚拟设备;·
[0005] 虚拟设备可以分为三类:字符类设备、块设备以及网络设备,例如,声卡驱动程序对应的虚拟设备为字符类设备,磁盘驱动程序对应的虚拟设备为块设备,网卡驱动程序对应的虚拟设备为网络设备,每个虚拟设备对应一个驱动程序,应用层通过虚拟设备控制对应的驱动程序,驱动程序与对应的虚拟设备之间的接口为驱动接口。
[0006] 现有技术中,每个硬件设备均对应一个驱动程序,如图2所示,硬件设备I对应的驱动程序为驱动程序A,硬件设备I与驱动程序A之间的接口为硬件接口 1A,驱动程序A与对应的虚拟设备a之间的接口为驱动接口 Aa,驱动程序A部署在驱动文件A中。
[0007] 随着用户要求的提高,可能需要对计算机中的硬件设备的功能进行扩展,但是硬件设备的原有驱动程序无法针对扩展的功能进行控制,因此需要同时对硬件设备的驱动程序进行扩展。现有技术在对硬件设备的驱动程序进行扩展时,一般将用于对扩展的功能进行控制的新增驱动程序与原有驱动程序部署在两个独立的驱动文件中,新增驱动程序独立完成对扩展的功能的控制,如图3所示,硬件设备I对应的驱动程序包括原有驱动程序A和新增驱动程序B,硬件设备I与原有驱动程序A之间的硬件接口为硬件接口 1A,硬件设备I与新增驱动程序B之间的硬件接口为硬件接口 1B,原有驱动程序A与对应的虚拟设备a之间的驱动接口为驱动接口 Aa,新增驱动程序B与对应的虚拟设备b之间的驱动接口为驱动接口 Bb,原有驱动程序A部署在驱动文件A中,新增驱动程序B部署在驱动文件B中。
[0008] 基于现有技术提出的驱动程序扩展方法对硬件设备进行控制时,至少存在下述两个缺陷:
[0009] I、新增驱动程序在对硬件设备进行控制时,需要使用驱动资源,例如子函数和全局变量,新增驱动程序需要使用的某些子函数可能已经部署在原有驱动程序中,但是新增驱动程序无法直接调用处于不同驱动文件中的原有驱动程序中的子函数,因此新增驱动程序需要重新部署这些子函数,也就是说某些子函数既要在原有驱动程序中部署,也要在新增驱动程序中部署,从而浪费了操作系统较多的存储资源;
[0010] 2、新增驱动程序需要使用的某些全局变量可能已经部署在原有驱动程序中,新增驱动程序在对硬件设备进行控制时,若需要使用这些全局变量,则向原有驱动程序请求获取这些全局变量的内容,原有驱动程序读取这些全局变量的内容,然后再反馈给新增驱动程序,新增驱动程序利用接收到的全局变量的内容对硬件设备进行控制,此外,新增驱动程序在对硬件设备进行控制之后,若对全局变量的内容进行了修改,则需要将修改后的内容发送给原有驱动程序,由原有驱动程序对这些全局变量进行内容更新,因此使得新增驱动程序和原有驱动程序之间需要进行较多的信息交互,浪费了较多的处理资源。
发明内容
[0011] 本发明实施例提供一种硬件设备控制方法及驱动模块,用以解决现有技术中存在的浪费了操作系统较多的存储资源及处理资源的问题。
[0012] 本发明实施例技术方案如下:
[0013] 一种硬件设备控制方法,该方法包括步骤:硬件设备的第一驱动模块通过对应的虚拟设备接收控制操作信息,其中,所述第一驱动模块与所述硬件设备的第二驱动模块部署于同一驱动文件中;所述第一驱动模块根据接收到的控制操作信息,确定对所述硬件设 备进行控制时所需的驱动资源;并在确定出的驱动资源中,查找部署于所述第二驱动模块中的驱动资源;所述第一驱动模块从所述第二驱动模块中调用查找到的驱动资源;并根据部署于所述第一驱动模块中的驱动资源以及从第二驱动模块中调用的驱动资源,对所述硬件设备进行控制。
[0014] 一种驱动模块,所述驱动模块与对应同一硬件设备的另一驱动模块部署于同一驱动文件中,所述驱动模块包括:控制操作信息接收单元,用于通过所述驱动模块对应的虚拟设备接收控制操作信息;驱动资源确定单元,用于根据控制操作信息接收单元接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源;驱动资源查找单元,用于在驱动资源确定单元确定出的驱动资源中,查找部署于所述另一驱动模块中的驱动资源;驱动资源调用单元,用于从所述另一驱动模块中调用驱动资源查找单元查找到的驱动资源;硬件设备控制单元,用于根据部署于所述驱动模块中的驱动资源以及驱动资源调用单元从所述另一驱动模块中调用的驱动资源,对所述硬件设备进行控制。
[0015] 本发明实施例技术方案中,硬件设备的第一驱动模块与该硬件设备的第二驱动模块部署于同一驱动文件中,第一驱动模块首先根据接收到的控制操作信息,确定对该硬件设备进行控制时所需的驱动资源,并在确定出的驱动资源中,查找部署于第二驱动模块中的驱动资源,第一驱动模块从第二驱动模块中调用查找到的驱动资源后对该硬件设备进行控制。由上可见,本发明实施例技术方案中,硬件设备对应的第一驱动模块和第二驱动模块部署在同一驱动文件中,因此第一驱动模块可以直接调用第二驱动模块中的驱动资源,无需再重新部署这些驱动资源,也无需和第二驱动模块之间进行信息交互来获得这些驱动资源,从而有效地节省了操作系统较多的存储资源和处理资源。
附图说明
[0016] 图I为现有技术中,操作系统架构示意图;
[0017] 图2为现有技术中,硬件设备与驱动程序的关系示意图;
[0018] 图3为现有技术中,驱动程序扩展方法实现示意图;
[0019] 图4为本发明实施例中,硬件设备控制方法流程示意图;
[0020] 图5为本发明实施例中,驱动程序扩展方法实现示意图;[0021 ] 图6为本发明实施例中,驱动模块结构示意图。
具体实施方式
[0022] 下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
[0023] 如图4所示,为本发明实施例中硬件设备控制方法流程图,其具体处理流程如下:
[0024] 步骤41,硬件设备的第一驱动模块通过对应的虚拟设备接收控制操作信息,其中,所述第一驱动模块与所述硬件设备的第二驱动模块部署于同一驱动文件中;
[0025] 其中,上述第一驱动模块对应硬件设备的新增驱动程序,第二驱动模块对应硬件设备的原有驱动程序,本发明实施例在对硬件设备的驱动程序进行扩展时,不再将新增驱动程序和原有驱动程序部署在两个独立的驱动文件中,而是部署在同一驱动文件中;新增驱动程序和原有驱动程序共用原有的硬件接口,即新增驱动程序与原有驱动程序均通过原 有驱动程序对应的硬件接口与硬件设备相连;为了实现应用层对驱动程序的控制,每个驱动程序均与一个虚拟设备对应,因此新增驱动程序和原有驱动程序分别对应不同的虚拟设备,也就分别对应不同的驱动接口。
[0026] 如图5所示,硬件设备I对应的驱动程序包括原有驱动程序A和新增驱动程序B,新增驱动程序A和新增驱动程序B均部署在驱动文件A中,原有驱动程序A与硬件设备I之间的硬件接口为硬件接口 1A,新增驱动程序B与硬件设备I之间的硬件接口也为硬件接口 1A,原有驱动程序A对应的虚拟设备为虚拟设备a,新增驱动程序B对应的虚拟设备为虚拟设备b,原有驱动程序A与虚拟设备a之间的驱动接口为驱动接口 Aa,新增驱动程序B与虚拟设备b之间的驱动接口为驱动接口 Bb。
[0027] 应用层首先确定需要对硬件设备进行控制的驱动程序,然后通过该驱动程序对应的虚拟设备,将控制操作信息传输给该驱动程序,驱动程序根据接收到的控制操作信息对硬件设备进行相应的控制。
[0028] 步骤42,所述第一驱动模块根据接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源;
[0029] 新增驱动程序需要根据驱动资源,针对扩展的功能对硬件设备进行控制,其中,新增驱动程序所需的驱动资源既包括部署在新增驱动程序中的驱动资源,也包括部署在原有驱动程序中的驱动资源。
[0030] 步骤43,在确定出的驱动资源中,查找部署于所述第二驱动模块中的驱动资源;
[0031] 本发明实施例中,查找到的驱动资源可以为子函数和/或全局变量。
[0032] 步骤44,所述第一驱动模块从所述第二驱动模块中调用查找到的驱动资源;
[0033] 由于新增驱动程序和原有驱动程序部署在同一驱动文件中,因此新增驱动程序可以直接从位于同一驱动文件中的原有驱动程序中调用某些驱动资源,例如某些子函数或全局变量。
[0034] 若查找到的驱动资源为子函数,则新增驱动程序直接从原有驱动程序中调用该子函数,而无需在新增驱动程序中重新部署该子函数,从而节省了操作系统较多的存储资源。
[0035] 若查找到的驱动资源为全局变量,则新增驱动程序直接从原有驱动程序中读取该全局变量的内容,而无需新增驱动程序向原有驱动程序获取这些全局变量的内容,从而减少了新增驱动程序和原有驱动程序之间的信息交互,节省了操作系统较多的处理资源。
[0036] 步骤45,根据部署于所述第一驱动模块中的驱动资源以及从第二驱动模块中调用的驱动资源,对所述硬件设备进行控制。
[0037] 若查找到的驱动资源为全局变量,则新增驱动程序在对硬件设备进行控制时,可能会修改该全局变量的内容,那么新增驱动程序就需要在对硬件设备进行控制之后,对部署在原有驱动程序中的该全局变量进行内容更新,由于新增驱动程序和原有驱动程序部署在同一驱动文件中,因此新增驱动程序直接对该全局变量进行内容更新,而无需新增驱动程序将修改后的内容发送给原有驱动程序,由原有驱动程序进行内容更新,因此减少了新增驱动程序和原有驱动程序之间的信息交互,节省了操作系统较多的处理资源。
[0038] 本发明实施例中,新增驱动程序对应的虚拟设备可以为字符类设备、块设备或网络设备。 [0039] 以新增驱动程序对应的虚拟设备为字符类设备、操作系统为Linux系统为例,下面介绍新增驱动程序的驱动接口函数:
[0040]
static struct file—operations driver—a—fops = {
.owner = THIS—MODULE,
.open = driver a open, //打开该字符类设备
.release = driver—a—release, Il关闭该字符类设备 .ioctl = driver—a—ioctl, //控制该字符类设备
.write = driver—a—write, //写该字符类设备
[0041].read = driver—a—read, //读该字符类设备
};
static ssize—t driver—a—open(struct inode *inode, struct file *file)
{
//在此处填写代码,可以为 空,也可填写对硬件设备控制的代码 }
static ssize t driver a release(struct inode *inode, struct file *file)
{
//在此处填写代码,可以为空,也可填写对硬件设备控制的代码 }
static ssize—t driver—a—ioctl(struct inode *inode, struct file * file,unsigned intcmd, unsigned long arg)
{
//在此处填写代码,可以为空,也可填写对硬件设备控制的代码 //cmd来至Linux系统应用层的命令字 //arg来至Linux系统应用层的变量或指针地址 }
static ssize—t driver—a—write(struct file * file,const char *buf, size—t len, loff t* offset)
{
//在此处填写代码,可以为空,也可填写对硬件设备控制的代码 //*buf来至Linux系统应用层的数据
//Ien来至Linux系统应用层的数据的长度(*buf指向空间内数据字节数) //*offset来至Linux系统应用层的数据地址偏移量,一般=0 }
static ssize—t driver_a_read(struct file *file, char *buf, size—t len, IofF t * offset) {
//在此处填写代码,可以为空,也可填写对硬件设备控制的代码
[0042]//*buf来至Linux系统应用层的数据//Ien来至Linux系统应用层的数据的长度(*buf指向空间内数据字节数)//*offset来至Linux系统应用层的数据地址偏移量,一般=0}
[0043] 在新增驱动程序中,driver_a_open()函数和driver_a_release ()函数是必须实现的,其它函数可以根据实际需要有选择的增加。
[0044] 新增驱动程序的虚拟设备注册代码可以但不限于为下述:
[0045]
static —devinit int driver—A_probe(.··)
{
driver—a—major = register—chrdev(0, '’driver—a' & driver—a—fops); driver—a—class = class—create(THIS—MODULE, "driver—a”); temp—class = device—create(driver—a—class, NULL, MKDEV(driver a major, 0), NULL, ”driver—a”);
}
[0046] 若新增驱动程序对应的驱动模块为驱动模块driver_a. ko, Linux系统运行起来后,执行insmod driver_a. ko,安装新增驱动程序,即可成功创建新增驱动程序对应的虚拟设备/dev/driver_a。Linux系统应用层通过虚拟设备打开或关闭新增驱动程序,实现代码如下:
[0047] fd = open(" /dev/driver_a" , 0_RDWR) ;// 打开
[0048] //可以创建进程对设备进行write () ;read() ;ioctl ();
[0049] close (fd) ;// 关闭
[0050] 下面以对某家庭信息终端中的声卡进行控制的方法为例,说明对驱动程序进行扩展的方法。
[0051] 某家庭信息终端中,声卡的原有驱动程序仅支持来自操作系统的数字流媒体声音,原有驱动程序通过I2S接口发送给声卡的音频编码器(codec)芯片,通过I2C接口控制音频codec芯片的工作状态。
[0052] 若需要针对声卡进行功能扩展,例如增加频率调制(FM,Frequency Modulation)收音机的功能,这就需要在用户收听收音机时,将音频codec的音源切换到FM接收芯片输出的模拟音频上。
[0053] 基于本发明实施例提出的驱动程序扩展方法,利用原有驱动程序的I2C接口来控制音频codec芯片,在原有驱动程序所在的驱动文件中部署新增的字符类设备的驱动程序,即新增驱动程序,扩展出新的驱动接口与新增驱动程序对应。
[0054] 由于现有技术中,对硬件设备的驱动程序进行扩展时,需要对新增驱动程序进行重新部署,那么就需要程序编程人员完成驱动接口、新增驱动程序以及硬件接口三部分的代码,代码量比较大,因此编程难度较高。本发明实施例中,在对硬件设备的驱动程序进行扩展时,只需要在原有驱动程序所在的驱动文件中嵌入新增驱动程序即可,因此能够有效地减少新增的代码量,降低了编程难度。
[0055] 本发明实施例中的硬件控制方法可以但不限于适用于Linux操作系统,还适用于Windows操作系统。
[0056] 由上述处理过程可知,本发明实施例技术方案中,硬件设备的第一驱动模块与该硬件设备的第二驱动模块部署于同一驱动文件中,第一驱动模块首先根据接收到的控制操作信息,确定对该硬件设备进行控制时所需的驱动资源,并在确定出的驱动资源中,查找部署于第二驱动模块中的驱动资源,第一驱动模块从第二驱动模块中调用查找到的驱动资源
后对该硬件设备进行控制。由上可见,本发明实施例技术方案中,硬件设备对应的第一驱动模块和第二驱动模块部署在同一驱动文件中,因此第一驱动模块可以直接调用第二驱动模块中的驱动资源,无需再重新部署这些驱动资源,也无需和第二驱动模块之间进行信息交互来获得这些驱动资源,从而有效地节省了操作系统较多的存储资源和处理资源。
[0057] 相应的,本发明实施例还提供一种驱动模块,其结构如图6所示,该驱动模块与对应同一硬件设备的另一驱动模块部署于同一驱动文件中,所述驱动模块包括控制操作信息接收单元61、驱动资源确定单元62、驱动资源查找单元63、驱动资源调用单元64和硬件设备控制单兀65,其中:
[0058] 控制操作信息接收单元61,用于通过所述驱动模块对应的虚拟设备接收控制操作
信息;
[0059] 驱动资源确定单元62,用于根据控制操作信息接收单元61接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源;
[0060] 驱动资源查找单元63,用于在驱动资源确定单元62确定出的驱动资源中,查找部署于所述另一驱动模块中的驱动资源;
[0061] 驱动资源调用单元64,用于从所述另一驱动模块中调用驱动资源查找单元63查找到的驱动资源;
[0062] 硬件设备控制单元65,用于根据部署于所述驱动模块中的驱动资源以及驱动资源调用单元64从所述另一驱动模块中调用的驱动资源,对所述硬件设备进行控制。
[0063] 较佳地,部署于所述另一驱动模块中的驱动资源包含下述至少一种资源:子函数;
全局变量。
[0064] 更佳地,若驱动资源查找单元63查找到的驱动资源为全局变量,则驱动资源调用单元64从所述另一驱动模块中读取所述全局变量的内容。
[0065] 更佳地,若驱动资源查找单元63查找到的驱动资源为全局变量,则所述驱动模块还包括:
[0066] 内容确定单元,用于确定硬件设备控制单元65对所述硬件设备进行控制后,所述全局变量的内容;
[0067] 内容更新单元,用于根据内容确定单元确定出的内容,对部署在所述另一驱动模块中的所述全局变量进行内容更新。
[0068] 较佳地,所述驱动模块对应的虚拟设备与所述另一驱动模块对应的虚拟设备不同。
[0069] 较佳地,所述驱动模块对应的虚拟设备为字符类设备、块设备或网络设备。
[0070] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在 内。
Claims (10)
1. 一种硬件设备控制方法,其特征在于,包括: 硬件设备的第一驱动模块通过对应的虚拟设备接收控制操作信息,其中,所述第一驱动模块与所述硬件设备的第二驱动模块部署于同一驱动文件中; 所述第一驱动模块根据接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源;并 在确定出的驱动资源中,查找部署于所述第二驱动模块中的驱动资源; 所述第一驱动模块从所述第二驱动模块中调用查找到的驱动资源;并根据部署于所述第一驱动模块中的驱动资源以及从第二驱动模块中调用的驱动资源,对所述硬件设备进行控制。
2.如权利要求I所述的硬件设备控制方法,其特征在于,查找到的驱动资源包含下述至少一种资源:子函数;全局变量。
3.如权利要求2所述的硬件设备控制方法,其特征在于,若查找到的驱动资源为全局变量,则所述第一驱动模块从所述第二驱动模块中调用查找到的驱动资源,具体包括: 所述第一驱动模块从所述第二驱动模块中读取所述全局变量的内容。
4.如权利要求2所述的硬件设备控制方法,其特征在于,若查找到的驱动资源为全局变量,则还包括: 所述第一驱动模块确定对所述硬件设备进行控制后,所述全局变量的内容;以及 根据确定出的内容,对部署在第二驱动模块中的所述全局变量进行内容更新。
5.如权利要求I所述的硬件设备控制方法,其特征在于,所述第一驱动模块与所述第二驱动模块对应不同的虚拟设备。
6.如权利要求I所述的硬件设备控制方法,其特征在于,所述第一驱动模块对应的虚拟设备为字符类设备、块设备或网络设备。
7. —种驱动模块,其特征在于,所述驱动模块与对应同一硬件设备的另一驱动模块部署于同一驱动文件中,所述驱动模块包括: 控制操作信息接收单元,用于通过所述驱动模块对应的虚拟设备接收控制操作信息;驱动资源确定单元,用于根据控制操作信息接收单元接收到的控制操作信息,确定对所述硬件设备进行控制时所需的驱动资源; 驱动资源查找单元,用于在驱动资源确定单元确定出的驱动资源中,查找部署于所述另一驱动模块中的驱动资源; 驱动资源调用单元,用于从所述另一驱动模块中调用驱动资源查找单元查找到的驱动资源; 硬件设备控制单元,用于根据部署于所述驱动模块中的驱动资源以及驱动资源调用单元从所述另一驱动模块中调用的驱动资源,对所述硬件设备进行控制。
8.如权利要求7所述的驱动模块,其特征在于,部署于所述另一驱动模块中的驱动资源包含下述至少一种资源:子函数;全局变量。
9.如权利要求8所述的驱动模块,其特征在于,若驱动资源查找单元查找到的驱动资源为全局变量,则驱动资源调用单元从所述另一驱动模块中读取所述全局变量的内容。
10.如权利要求8所述的驱动模块,其特征在于,若驱动资源查找单元查找到的驱动资源为全局变量,则所述驱动模块还包括:内容确定单元,用于确定硬件设备控制单元对所述硬件设备进行控制后,所述全局变量的内容; 内容更新单元,用于根据内容确定单元确定出的内容,对部署在所述另一驱动模块中的所述全局变量进行内容更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110210435.5A CN102902638B (zh) | 2011-07-26 | 2011-07-26 | 硬件设备控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110210435.5A CN102902638B (zh) | 2011-07-26 | 2011-07-26 | 硬件设备控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102902638A true CN102902638A (zh) | 2013-01-30 |
CN102902638B CN102902638B (zh) | 2015-04-22 |
Family
ID=47574883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110210435.5A Active CN102902638B (zh) | 2011-07-26 | 2011-07-26 | 硬件设备控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102902638B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383708A (zh) * | 2016-09-13 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 模块加载方法及系统 |
CN108205503A (zh) * | 2016-12-16 | 2018-06-26 | 龙芯中科技术有限公司 | 硬件驱动兼容方法及终端 |
CN109976697A (zh) * | 2017-12-28 | 2019-07-05 | 深圳市优必选科技有限公司 | 获取音频数据的方法及装置、设备、计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010109620A (ko) * | 2000-05-31 | 2001-12-12 | 김진찬 | 전전자 교환기의 디바이스 보오드 제어 방법 |
US20050165979A1 (en) * | 2004-01-22 | 2005-07-28 | Canon Kabushiki Kaisha | Peripheral device control method, control program, and apparatus therefor |
CN101179660A (zh) * | 2007-12-12 | 2008-05-14 | 北京中星微电子有限公司 | 摄像头视频图像处理的系统及其方法 |
CN101282240A (zh) * | 2008-05-15 | 2008-10-08 | 华为技术有限公司 | 一种网络设备管理方法、设备及系统 |
CN101430670A (zh) * | 2008-12-16 | 2009-05-13 | 中国科学院计算技术研究所 | 一种在虚拟化环境中i/o设备重构的方法及系统 |
CN101770389A (zh) * | 2008-12-29 | 2010-07-07 | 北京联想软件有限公司 | 一种计算机及管理硬件设备的方法 |
-
2011
- 2011-07-26 CN CN201110210435.5A patent/CN102902638B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010109620A (ko) * | 2000-05-31 | 2001-12-12 | 김진찬 | 전전자 교환기의 디바이스 보오드 제어 방법 |
US20050165979A1 (en) * | 2004-01-22 | 2005-07-28 | Canon Kabushiki Kaisha | Peripheral device control method, control program, and apparatus therefor |
CN101179660A (zh) * | 2007-12-12 | 2008-05-14 | 北京中星微电子有限公司 | 摄像头视频图像处理的系统及其方法 |
CN101282240A (zh) * | 2008-05-15 | 2008-10-08 | 华为技术有限公司 | 一种网络设备管理方法、设备及系统 |
CN101430670A (zh) * | 2008-12-16 | 2009-05-13 | 中国科学院计算技术研究所 | 一种在虚拟化环境中i/o设备重构的方法及系统 |
CN101770389A (zh) * | 2008-12-29 | 2010-07-07 | 北京联想软件有限公司 | 一种计算机及管理硬件设备的方法 |
Non-Patent Citations (1)
Title |
---|
张弛: "软件组件接口扩展技术研究", 《微电子学与计算机》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383708A (zh) * | 2016-09-13 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 模块加载方法及系统 |
CN106383708B (zh) * | 2016-09-13 | 2020-02-21 | 宇龙计算机通信科技(深圳)有限公司 | 模块加载方法及系统 |
CN108205503A (zh) * | 2016-12-16 | 2018-06-26 | 龙芯中科技术有限公司 | 硬件驱动兼容方法及终端 |
CN109976697A (zh) * | 2017-12-28 | 2019-07-05 | 深圳市优必选科技有限公司 | 获取音频数据的方法及装置、设备、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102902638B (zh) | 2015-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100533413C (zh) | 数字信号处理器子系统及其数据处理方法 | |
US6442407B1 (en) | Mobile radio telephone set | |
CN100517221C (zh) | 高效多处理器系统及其方法 | |
CN103294545B (zh) | 切换双操作系统的方法以及电子装置 | |
EP3097488A1 (en) | System and method for synchronous task dispatch in a portable device | |
CN110385991A (zh) | 车辆的多媒体娱乐系统、控制方法及车辆 | |
CN102981875B (zh) | 一种基于android的x86端按键适配方法及系统 | |
CN1447543A (zh) | 无线通信装置以及无线通信方法 | |
CN102902638B (zh) | 硬件设备控制方法及装置 | |
CN101150811B (zh) | 一种移动终端中控制待机的装置和方法 | |
JP3338818B2 (ja) | 無線lan端末のためのパワーマネージメント方式 | |
CN108900348B (zh) | 基于sca的平台管理服务实现方法 | |
CN107291510A (zh) | 一种Linux车载信息系统快速启动方法 | |
US20200351155A1 (en) | Base station configuration method and apparatus | |
CN101227358A (zh) | 一种双处理器WiMAX基站及其数据处理方法 | |
JP6785332B2 (ja) | ブルートゥーススピーカーデータ処理の方法、装置及びブルートゥーススピーカー | |
CN103455328A (zh) | 基于多层次状态机的媒体播放控制器、播放器及播放方法 | |
WO2012129930A1 (zh) | 一种多制式驱动方法、系统和终端 | |
US10503674B2 (en) | Semiconductor device including a clock source for generating a clock signal and a clock control circuit for controlling the clock source in hardware, a semiconductor system including the semiconductor device, and a method of operating the semiconductor device | |
CN103488527A (zh) | 一种php api调用方法、相关设备及系统 | |
CN101980170B (zh) | 一种微内核系统中软件模块的通信方法、系统及装置 | |
CN106909450A (zh) | 进程管理方法、装置及终端 | |
CN110401939A (zh) | 一种低功耗蓝牙控制器链路层装置 | |
JP2003330900A (ja) | アプリケーション並列処理システム及びアプリケーション並列処理方法 | |
CN111292716A (zh) | 语音芯片和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TR01 | Transfer of patent right |
Effective date of registration: 20220914 Address after: 3007, Hengqin international financial center building, No. 58, Huajin street, Hengqin new area, Zhuhai, Guangdong 519031 Patentee after: New founder holdings development Co.,Ltd. Address before: 100871, Beijing, Haidian District Cheng Fu Road 298, founder building, 9 floor Patentee before: PEKING UNIVERSITY FOUNDER GROUP Co.,Ltd. |