CN101770433B - 通用驱动方法和通用驱动设备 - Google Patents

通用驱动方法和通用驱动设备 Download PDF

Info

Publication number
CN101770433B
CN101770433B CN2008101905462A CN200810190546A CN101770433B CN 101770433 B CN101770433 B CN 101770433B CN 2008101905462 A CN2008101905462 A CN 2008101905462A CN 200810190546 A CN200810190546 A CN 200810190546A CN 101770433 B CN101770433 B CN 101770433B
Authority
CN
China
Prior art keywords
hardware
general
driving
distribution list
function
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.)
Expired - Fee Related
Application number
CN2008101905462A
Other languages
English (en)
Other versions
CN101770433A (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.)
STMicroelectronics Shanghai R&D Co Ltd
Original Assignee
STMicroelectronics Shanghai R&D 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 STMicroelectronics Shanghai R&D Co Ltd filed Critical STMicroelectronics Shanghai R&D Co Ltd
Priority to CN2008101905462A priority Critical patent/CN101770433B/zh
Priority to US12/650,279 priority patent/US8732729B2/en
Publication of CN101770433A publication Critical patent/CN101770433A/zh
Application granted granted Critical
Publication of CN101770433B publication Critical patent/CN101770433B/zh
Priority to US14/180,894 priority patent/US8813099B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种用于手持设备的通用驱动的技术解决方案。此技术解决方案的一个实施方式包括用于手持设备的通用驱动方法。该方法可以包括:确定当前安装的硬件的驱动类型;根据该驱动类型和适用于多个硬件的通用分发列表,来设置当前分发列表;以及通过调用当前分发列表,来驱动相应的硬件。

Description

通用驱动方法和通用驱动设备
技术领域
本发明主要涉及驱动技术领域,以及更具体地涉及手持设备中使用的适用于多种硬件的通用驱动方法以及实现该方法的通用驱动设备。
背景技术
随着用于手持设备(例如移动电话、手持游戏控制台等)的各种硬件的开发,越来越多的功能可以借助于这些硬件来完成。
众所周知,驱动往往是针对每个硬件分别进行设计的,也就是说,对于不同的硬件,需要不同的驱动。例如,在手持设备中的三维(3D)图形渲染(rendering)中,考虑到用于3D图形加速的管道图形的开发,相应的加速方案可以通过全软件方式、全硬件方式或者软硬件共同配合的方式实现。因此,为了支持用于手持设备的各种硬件(还包括软件和软硬件的结合,其中每种方式对应于一种3D加速方案),就需要提供不同的驱动。这会带来了以下一些问题:
1)由于要针对各个硬件对应的各个驱动分别进行测试和调试,致使这些驱动的开发过程较长,随之而来的发布也往往需要较长的时间,从而不利于技术的快速发展;
2)由于需要针对不同的硬件来维护与其对应的不同驱动,因而所需的维护成本更高;以及
3)由于手持设备的一个硬件上只能运行单个驱动,因此难以通过在不同的硬件之间进行切换,完成硬件性能的灵活调配。
上述问题使得集成在单个芯片上的驱动无法为当前针对手持设备的3D引擎研究提供最优的解决方案。
到目前为止,手持设备中大部分当前的3D应用还是基于全软件加速。基于硬件的3D图形引擎的开发还属于刚刚开发的领域。
随着驱动的发展,驱动可以被分成两个部分,即与硬件无关的部分和与硬件相关的部分。在3D图像处理的应用中,上述与硬件无关的部分可用于管理图形程序接口(GL:Graphics Library)状态,而与硬件相关的部分用于控制如何将GL状态传递给硬件。
发明内容
本发明的一个目的是提供一种通用驱动方法和设备,用于处理驱动中与硬件相关的部分,使得其可根据不同的硬件进行切换。
为此,本发明提供了一种用于手持设备的通用驱动的技术解决方案。此技术方案的一种实施方式可以包括一种用于手持设备的通用驱动方法,该方法可以包括:确定当前安装的硬件的驱动类型;根据驱动类型和适用于多个硬件的通用分发列表,来设置当前分发列表;以及通过调用当前分发列表,来驱动相应的硬件或软件。
此外,此技术方案的另一种实施方式可以包括一种用于手持设备的通用驱动设备,该设备可以包括:确定装置,用于确定当前安装的硬件的驱动类型;设置装置,用于根据驱动类型和适用于多个硬件的通用分发列表,来设置当前分发列表;以及驱动装置,用于通过调用当前分发列表,驱动相应的硬件或软件。
利用本发明实施方式的通用驱动方法和设备,可以在手持设备上提供通用的驱动,从而支持多个硬件。由此,产生的通用驱动可以将手持设备的系统中基于不同平台的应用——如图形加速系统——直接集成在一起。
附图说明
图1是根据本发明的一种实施方式的通用驱动设备的结构示意图;
图2是根据本发明的一种实施方式的通用驱动方法的示意性流程图;
图3A示出了根据本发明的一种实施方式的方法而建立的通用分发列表的示意图;
图3B示出了本发明的一种实施方式的方法中针对一个硬件作为当前安装的硬件所设置的当前分发列表的示意图;
图3C示出了本发明的一种实施方式的方法中针对另一个硬件作为当前安装的硬件所设置的当前分发列表的示意图;
图4示出全局渲染值划分的示意图。
具体实施方式
下面以3D图像处理为例并参照示出本发明实施方式的附图描述本发明。然而,本领域技术人员应该理解,本发明并不局限于3D图像处理。
在3D图像处理中,常用的渲染功能包括:坐标转换和光影处理(TnL)、扫描(点)(Rasteriser)和后场处理(Back-end)。这些功能可以全部用硬件实现(“全硬件驱动”),例如用数字信号处理实现,也可以由硬件和软件共同配合实现(“部分硬件驱动”),或者全部用软件实现而硬件不参与处理(“全软件驱动”)。一个硬件在实现不同的功能时使用上述三种驱动类型中的哪一种取决于该硬件的具体设计。
首先,结合图1说明根据本发明一个实施方式的通用驱动设备100的内部结构。
如图1所示,通用驱动设备100可以包括获取装置101、生成装置102、确定装置103、设置装置104以及驱动装置105。
具体地,获取装置101被配置用来获取与通用驱动设备100相关的多个硬件的驱动信息。在本实施方式中,以通用驱动设备100可以支持进行3D图像处理的第一硬件和第二硬件为例进行说明。例如,获取装置101随后可以将从第一硬件和第二硬件获取的驱动信息送入生成装置102。
生成装置102被配置为利用这些驱动信息生成可为多个硬件使用的通用分发列表。例如,该通用分发列表包括渲染功能栏和完成渲染功能所需驱动对象的地址指针栏。在地址指针栏中,可以根据从硬件层获得的硬件的驱动类型,记录使用每个硬件完成所有渲染功能(包括TnL、Rasteriser和Back-end功能)所需驱动对象一软件或硬件地址的指针。
本领域技术人员应该理解,对于本发明实施方式的通用驱动设备100来说,上述获取装置101和生成装置102仅仅是优选的,而并非必须的。例如,可以通过直接加载已有的通用分发列表来得到通用分发列表。
确定装置103被配置为确定当前安装的硬件(如第一硬件)用于实现各个功能的驱动类型。例如,在本实施方式中,第一硬件的TnL被设计为由软件实现,则其驱动类型为“全软件驱动”,Rasteriser由软件和硬件配合实现,则其驱动类型为“部分硬件驱动”,Back-end由硬件DSP实现,则其驱动类型为“全硬件驱动”。
设置装置104被配置为根据通用分发列表和驱动类型,设置当前分发列表。例如,在本实施方式中,根据确定的第一硬件的驱动类型和通用分发列表,当前分发列表设置装置104设置对应于第一硬件的当前分发列表,即将通用分发列表中的地址指针分别指向第一硬件完成各个功能所涉及的软件和硬件的地址。
驱动装置105被配置为通过调用当前分发列表,并利用其中地址指针所指向的地址,来驱动相应的硬件或者软件。
利用本发明的上述实施方式的通用驱动设备100,可以容易地实现支持多个硬件的通用驱动,从而用一个通用的驱动为不同的硬件提供了相应的驱动选择。根据本发明的实施方式,通用驱动设备100的工作(运行)方法可以包括图2所描述的通用驱动方法200。
下面,结合图2说明根据本发明一个实施方式的通用驱动方法200的示意性流程图。
图2示出根据本发明的一个实施方式的通用驱动方法200的示意性流程图。
如图2所示,在模块201处,获取装置101分别获取通用驱动方法需要支持的多个硬件的驱动信息。在本实施方式中,以通用驱动可以支持进行3D图像处理的第一硬件和第二硬件为例进行说明,其中第一硬件支持数字信号处理(DSP)实现,第二硬件为全软件实现。在获取第一硬件、第二硬件的驱动信息之后,图2所示的流程进入模块202。
在模块202处,生成装置102根据在模块201中获取的多个硬件的驱动信息生成适于多个硬件的通用分发列表。例如,该通用分发列表包括渲染功能栏和完成渲染功能所需驱动对象的地址指针栏。在地址指针栏中,根据从硬件层获得的硬件的驱动类型,记录使用每个硬件完成所有渲染功能(包括TnL、Rasteriser和Back-end功能)所需驱动对象——软件或硬件地址的指针。这些渲染功能用于将GL状态传递给硬件。由此,当驱动接收到来自应用的GL命令时,它可以直接使用分发列表将适当的命令发送给适当的硬件。
这样,完成了根据本发明的一个实施方式的通用驱动方法的初始化过程。本邻域的技术人员容易理解,上述初始化过程也可以通过直接加载配置文件来完成。因此,对于根据本发明实施方式的通用驱动方法而言,模块201和202仅仅是优选的,而并非必须的。
在模块203处,确定装置103确定当前安装的硬件(如第一硬件)用于实现各个功能的驱动类型。例如,在本实施方式中,第一硬件的TnL被设计为由软件实现,则其驱动类型为“全软件驱动”,Rasteriser由软件和硬件配合实现,则其驱动类型为“部分硬件驱动”,Back-end由硬件DSP实现,则其驱动类型为“全硬件驱动”。
在模块204处,设置装置104根据通用分发列表和驱动类型,设置当前分发列表。例如,设置对应于当前安装的第一硬件的当前分发列表。具体地,将通用分发列表中的地址指针分别指向第一硬件完成各个功能所涉及的软件和硬件的地址。
在模块205,驱动装置105通过调用当前分发列表,并利用其中地址指针所指向的地址,来驱动相应的硬件。
由于图2所示的方法,可以根据硬件的不同设计,为多个不同的硬件设置通用的分发列表,从而为多个硬件提供了一个通用的驱动。该通用驱动可以直接调用对应于当前安装硬件的当前分发列表中存储的相关渲染功能来更新状态,并根据分发列表驱动相应硬件或者软件。
在嵌入式开放图形程序接口系统中,有两种命令,一种用于更新GL状态,另一种用于绘制对象。当使用“发送一个OpenGL/ES命令”来更新GL状态时,驱动利用一个全局渲染值来存储新的GL状态(包括驱动状态、TnL状态、Rasteriser和Back-end状态)值,并激活一个附在该状态之上的标记从而令该状态为“有效”。当使用“发送一个绘制对象的命令”时,则驱动利用新的全局渲染值来更新硬件。当GL状态为有效时,渲染功能则利用分发列表将GL状态转发至指定的硬件。
下面结合图3A说明上述实施方式的方法中的初始化阶段(例如,图2的模块202)建立的通用分发列表的示意图。如图3A所示,在初始化过程中,建立可对应于第一硬件和第二硬件的通用分发列表,该通用分发列表包括渲染功能栏和完成渲染功能所需驱动对象的地址指针栏。
在本实施方式中,假定第一硬件为低端系统,它的TnL完全由主机CPU中的软件完成,而第二硬件为高端系统,其TnL由专用处理器如DSP完成。并且,在本实施方式中,仅以第一硬件和第二硬件中的TnL部分不同为例进行说明。这样,在初始化过程中,将询问第一硬件和第二硬件而获知TnL是否可由硬件支持,而有关Rasteriser和Back-end部分在通用分发列表中是固定的。这样,在设置当前分发列表时,分发管理器可以根据TnL版本(即全软件或DSP)在通用分发列表中填入TnL部分的渲染功能及其驱动地址指针。
图3B示出在当前硬件为第一硬件时所设置的当前分发列表。由于第一硬件的TnL完全由主机CPU中的软件完成,因此,在对应的TnL一项中,分发管理器将填入软件渲染功能指针。在后续的调用步骤中,由于所有的GL状态可以从全局渲染值中直接获得,因此无需将TnLGL状态转发给硬件。
如果当前安装的硬件是第二硬件,则由于第二硬件的TnL可由DSP支持,因此在通用分发列表中将填入硬件渲染功能指针,如图3C所示。由于主机CPU和DSP是不同的处理器,因此,对于第二硬件,TnL GL状态不能从全局渲染值中直接获得。在此情况下,这些GL状态将在硬件渲染功能中被转换为32位的命令,该命令随后被转发到CMD接口。驱动装置利用从CMD接口获得的32位的命令,解析该命令并更新本地TnL状态。
可选地,为了简化本发明的通用驱动设备的结构,以及简化处理的流程,根据本发明的一个实施方式,进一步在分发列表中列出所支持的硬件实现的各个功能所对应的驱动操作。尽管对于不同的硬件,是利用不同的处理器来实现某一个特定功能(如TnL),但是实际上,在这些处理器中执行的针对该功能的操作处理步骤是相同的。也就是说,它们对应于相同的内核(例如相同的函数或者程序)。这样,就可以在不同硬件之间共享一个对应的驱动操作,从而节省了对于该通用驱动设备的开发、维护和管理时间。
为此,在如图3A所示的通用分发列表中,增加了驱动操作栏,它和驱动对象的地址指针栏一起,指明完成各个功能所需的驱动操作以及这些驱动操作针对的驱动对象的地址。
图3A的分发列表中的驱动操作栏包括TnL对应的驱动操作A1、Rasteriser对应的驱动操作A2和Back-end对应的驱动操作A3。利用不同硬件之间执行的相同驱动操作,第一硬件、第二硬件中的TnL功能可以共享驱动操作A1,Rasteriser功能共享驱动操作A2,以及Back-end功能共享驱动操作A3。
具体到图3B的分发列表而言,由于第一硬件的TnL由软件实现,因此在驱动操作A1后的驱动对象地址指针栏内的指针指向执行软件的地址a,即CPU的地址。Rasteriser由软件和硬件配合实现,因此在驱动操作A2后的驱动对象地址指针栏内的指针指向执行软件的地址a和硬件操作的地址b。Back-end功能全部由硬件实现,因此在驱动操作A3后的驱动对象地址指针栏内的指针指向第一硬件操作的地址b。
对于图3C的分发列表而言,由于第二硬件的TnL由专用处理器如DSP完成,因此,TnL驱动操作A1后的驱动对象地址指针栏内的指针指向执行第二硬件的地址c。图3C第3行中Rasteriser同样执行驱动操作A2,其后的驱动对象地址指针栏内的指针指向执行软件的地址a和第二硬件操作的地址c。Back-end的驱动操作A3后的驱动对象地址指针栏指向第二硬件操作的地址c。
上述共享带来的一个问题是,TnL状态的输入仅在TnL级是有效的。为了令该输入的参数更加具有可读性,优选地是对全局渲染值进行重构。如图4所示,全局渲染值被分为三个子结构,即驱动器状态、TnL状态以及Rasteriser和Back-end状态。这样,调用的驱动操作可以仅使用一个子结构作为输入参数。在主机CPU中,调用的软件操作可以直接使用全局渲染值中的TnL状态作为输入参数。而在支持DSP的情况下,CMD接口将接收32位的TnL命令来更新DSP中的TnL状态,该状态是全局渲染值中TnL状态的复制。
对于全软件TnL,绘制命令触发用于TnL内核的函数,产生新的真位(bit true)Rasteriser命令,该命令被送至Rasteriser CMD接口。对于DSP TnL,在所有状态都被更新后,绘制命令将触发TnL状态以全局渲染值的形式传送至DSP,在DSP中将调用相应的函数。TnL内核中生成的Rasteriser命令将之转发到CMD接口。Rasteriser级将使用来自驱动器的该Rasteriser状态获得对象片断,该对象将在Back-end级被渲染。
前面的实施方式是基于手持设备的3D图形加速方案描述了本发明的通用驱动方法和通用驱动设备的例子。在上述实施方式中,仅用一个驱动就可以适用于多个3D图形体系结构的不同组合,并且使用3D引擎初始化阶段读取的一个配置文件——通用分发列表就可以实现这些不同组合之间方便的切换,同时有利于方便地添加新的硬件。本领域的技术人员应当理解,本发明适于提供手持设备中实现任何应用的多个硬件的通用驱动。
根据本发明的通用驱动方法和设备使得手持设备的3D引擎的配置变得更容易,从而能够方便地重新分配手持设备的资源,这又令手持设备的性能实现了更优。另一方面,无需再花费大量的人力物力来进行版本控制和发布管理,并可以为性能优化和加入新特征而分配更多的资源。
利用上述方法和设备,使得用一个通用的驱动就可以完成对多个硬件的驱动,大大增加了驱动的适用范围,提高了系统的利用率。此外,由于本发明的通用驱动是利用一个环境来实现的,因此诸如管理、更新和纠错都可以在该环境中完成,从而降低了本发明的方法和设备的复杂度,提高了其稳定性和可靠性。
本发明可以以硬件、软件、固件以及它们的组合来实现。本领域技术人员应该认识到,也可以在供任何合适数据处理系统使用的信号承载介质上所设置的计算机程序产品中体现本发明。这种信号承载介质可以是传输介质或用于机器可读信息的可记录介质,包括磁介质、光介质或其他合适介质。可记录介质的示例包括:硬盘驱动器中的磁盘或软盘、用于光驱的光盘、磁带,以及本领域技术人员所能想到的其他介质。本领域技术人员应该认识到,具有合适编程装置的任何通信设备都将能够执行如程序产品中体现的本发明方法的流程。
尽管已经参照当前被认为是实施方式的内容描述了本发明,但是应当理解本发明不限于所公开的实施方式。相反,本发明要覆盖包含在所附权利要求的构思和范围内的各种变型和等价方案。如下权利要求的范围要记录最宽的解释,从而包含所有这样的变型和等价结构及功能。

Claims (12)

1.一种用于手持设备的通用驱动方法,包括:
确定当前安装的硬件的驱动类型;
根据所述驱动类型和适用于多个硬件的通用分发列表,来设置当前分发列表;以及
通过调用所述当前分发列表,来驱动相应的硬件;
其中所述通用分发列表包括功能栏和完成相应功能所需驱动对象的地址指针栏。
2.根据权利要求1所述的通用驱动方法,还包括:
获取所述通用驱动方法支持的多个硬件的驱动信息;以及
利用所述驱动信息,生成所述通用分发列表。
3.根据权利要求2所述的通用驱动方法,其中,所述获取驱动信息包括获取所述多个硬件为实现所述手持设备中的应用所需完成的不同功能。
4.根据权利要求1-3任意一个所述的通用驱动方法,其中所述驱动类型包括以下至少之一:
(1)一个功能全部用硬件实现的全硬件驱动类型;
(2)一个功能由硬件和软件共同配合实现的部分硬件驱动类型;以及
(3)一个功能全部用软件实现,硬件不参与处理的全软件驱动类型。
5.根据权利要求4所述的通用驱动方法,其中所述设置当前分发列表包括:
(1)当一个功能由所述当前安装的硬件实现时,则在所述通用分发列表中与该功能相应地址指针栏设置所述当前安装的硬件的地址;
(2)当一个功能由所述当前安装的硬件和软件共同配合实现时,则在所述通用分发列表中与该功能相应的地址指针栏设置所述当前安装的硬件的地址和软件的地址;以及
(3)当一个功能全部用软件实现时,则在所述通用分发列表中与该功能相应的地址指针栏设置软件的地址。
6.根据权利要求1所述的通用驱动方法,其中所述通用分发列表还包括驱动操作栏,用于标明各个所述功能所对应的驱动操作,使得所述多个硬件共享相对应的驱动操作。
7.一种用于手持设备的通用驱动设备,包括;
确定装置,用于确定当前安装的硬件的驱动类型;
设置装置,用于所述驱动类型和适用于多个硬件的通用分发列表,来设置当前分发列表;以及
驱动装置,用于通过调用所述当前分发列表,来驱动相应的硬件;
其中所述通用分发列表包括功能栏和完成相应功能所需驱动对象的地址指针栏。
8.根据权利要求7所述的通用驱动设备,还包括:
获取装置,用于获取与所述通用驱动设备相关的多个硬件的驱动信息;
生成装置,用于利用所述驱动信息,生成所述通用分发列表。
9.根据权利要求8所述的通用驱动设备,其中,所述获取装置进一步获取所述多个硬件为实现所述手持设备中的应用所需完成的不同功能。
10.根据权利要求7-9任意一个所述的通用驱动设备,其中所述驱动类型包括以下至少之一:
(1)一个功能全部用硬件实现的全硬件驱动类型;
(2)一个功能由硬件和软件共同配合实现的部分硬件驱动类型;以及
(3)一个功能全部用软件实现,硬件不参与处理的全软件驱动类型。
11.根据权利要求10所述的通用驱动设备,其中所述设置装置进一步被配置为
(1)当一个功能由所述当前安装的硬件实现时,则在所述通用分发列表中与该功能相应地址指针栏设置所述当前安装的硬件的地址;
(2)当一个功能由所述当前安装的硬件和软件共同配合实现时,则在所述通用分发列表中与该功能相应的地址指针栏设置所述当前安装的硬件的地址和软件的地址;以及
(3)当一个功能全部用软件实现时,则在所述通用分发列表中与该功能相应的地址指针栏设置软件的地址。
12.根据权利要求7所述的通用驱动设备,其中所述通用分发列表还包括驱动操作栏,用于标明各个所述功能所对应的驱动操作,使得所述多个硬件共享相对应的驱动操作。
CN2008101905462A 2008-12-30 2008-12-30 通用驱动方法和通用驱动设备 Expired - Fee Related CN101770433B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2008101905462A CN101770433B (zh) 2008-12-30 2008-12-30 通用驱动方法和通用驱动设备
US12/650,279 US8732729B2 (en) 2008-12-30 2009-12-30 Unified driving method and unified driver apparatus
US14/180,894 US8813099B2 (en) 2008-12-30 2014-02-14 Unified driving method and unified driver apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101905462A CN101770433B (zh) 2008-12-30 2008-12-30 通用驱动方法和通用驱动设备

Publications (2)

Publication Number Publication Date
CN101770433A CN101770433A (zh) 2010-07-07
CN101770433B true CN101770433B (zh) 2012-01-11

Family

ID=42286513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101905462A Expired - Fee Related CN101770433B (zh) 2008-12-30 2008-12-30 通用驱动方法和通用驱动设备

Country Status (2)

Country Link
US (2) US8732729B2 (zh)
CN (1) CN101770433B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8108520B2 (en) * 2003-06-19 2012-01-31 Nokia Corporation Apparatus and method for providing quality of service for a network data connection
US8832720B2 (en) * 2012-01-05 2014-09-09 Intel Corporation Multimedia driver architecture for reusability across operating systems and hardware platforms
US9459910B1 (en) * 2013-03-13 2016-10-04 Emc Corporation Controlling a layered driver
CN104598351B (zh) * 2014-02-11 2016-10-05 腾讯科技(深圳)有限公司 3d引擎兼容性的测试方法和装置
CN104991872A (zh) * 2015-06-19 2015-10-21 上海卓易科技股份有限公司 一种实现智能设备驱动外围设备的方法及装置
CN105045616B (zh) * 2015-07-03 2018-02-23 浪潮软件集团有限公司 一种调用驱动的方法及装置
CN107423095B (zh) * 2017-07-24 2020-10-02 百富计算机技术(深圳)有限公司 适配硬件的数据处理方法、装置、存储介质和计算机设备
CN107729067B (zh) * 2017-09-11 2021-04-20 北京东土科技股份有限公司 一种flash芯片驱动的注册方法及装置
CN112020741A (zh) 2018-04-27 2020-12-01 惠普发展公司,有限责任合伙企业 故障屏蔽
CN112579181B (zh) * 2020-11-13 2022-12-02 麒麟软件有限公司 操作系统中多gpu驱动兼容方法
CN114443189B (zh) * 2021-08-20 2023-01-13 荣耀终端有限公司 一种图像处理方法和电子设备
CN116028392B (zh) * 2022-12-23 2024-01-09 中科驭数(北京)科技有限公司 面向基于kpu架构硬件的通用驱动管理方法、系统和设备
CN117472440B (zh) * 2023-12-27 2024-03-29 苏州元脑智能科技有限公司 芯片控制方法和装置、存储介质及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101097521A (zh) * 2006-06-30 2008-01-02 夏新电子股份有限公司 一种手持设备的Windows处理系统
CN101196849A (zh) * 2007-12-24 2008-06-11 康佳集团股份有限公司 一种flash的通用驱动方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604843A (en) * 1992-12-23 1997-02-18 Microsoft Corporation Method and system for interfacing with a computer output device
US6289396B1 (en) * 1995-11-21 2001-09-11 Diamond Multimedia Systems, Inc. Dynamic programmable mode switching device driver architecture
US6535903B2 (en) * 1996-01-29 2003-03-18 Compaq Information Technologies Group, L.P. Method and apparatus for maintaining translated routine stack in a binary translation environment
US6314470B1 (en) * 1997-07-25 2001-11-06 Hewlett Packard Company System and method for asynchronously accessing a graphics system for graphics application evaluation and control
EP1141870A2 (en) * 1999-01-07 2001-10-10 PowerTV, Inc. Purchase manager
US6831635B2 (en) 2001-03-01 2004-12-14 Microsoft Corporation Method and system for providing a unified API for both 2D and 3D graphics objects

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101097521A (zh) * 2006-06-30 2008-01-02 夏新电子股份有限公司 一种手持设备的Windows处理系统
CN101196849A (zh) * 2007-12-24 2008-06-11 康佳集团股份有限公司 一种flash的通用驱动方法

Also Published As

Publication number Publication date
CN101770433A (zh) 2010-07-07
US8732729B2 (en) 2014-05-20
US20140165079A1 (en) 2014-06-12
US8813099B2 (en) 2014-08-19
US20100169898A1 (en) 2010-07-01

Similar Documents

Publication Publication Date Title
CN101770433B (zh) 通用驱动方法和通用驱动设备
CN100530100C (zh) 用于允许存储在外部驱动器上的应用执行的系统和方法
CN101233489B (zh) 自适应进程分派的方法和系统
CN101268445B (zh) 用于向多核环境中的应用程序提供实时线程服务的方法、装置
CN102057355B (zh) 同步虚拟机和应用程序生存周期
CN101901164B (zh) 时间计划调度模块和方法
CN100511156C (zh) 强制性地终止输入/输出操作阻止的线程的设备和方法
CN102033755A (zh) 用于运行虚拟机镜像的方法和系统
CN101169733B (zh) 用于提供基于策略的操作系统服务的方法和系统
CN102279765A (zh) 预编译托存托管代码
US10789111B2 (en) Message oriented middleware with integrated rules engine
CN103488471A (zh) 更新硬件库以供具有fpga协处理器的计算机系统上的应用使用
CN102939588A (zh) 不依赖于管理程序平台的数据中心管理的方法和装置
US20170206121A1 (en) Monitoring components in a service framework
US20130151594A1 (en) Deployment and hosting of platform independent applications
CN103853594A (zh) 信息处理装置、信息处理方法和计算机程序
WO2020192745A1 (zh) 一种提供寄宿程序的方法与设备
CN102016802B (zh) 跨任务共享操作系统子进程
CN101216770A (zh) 一种工作流引擎
CN102331931A (zh) 动态库管理方法和装置
CN102567071A (zh) 一种虚拟串口系统及其通信方法
JP3404322B2 (ja) 割込処理方法、os支援システム、情報処理装置、記録媒体
KR20040087898A (ko) 프로그램 처리 시스템 및 프로그램 처리 방법, 및컴퓨터·프로그램
CN107357603A (zh) 一种软件加载方法、设备及系统
CN100492299C (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120111

Termination date: 20211230