书签 分享 收藏 举报 版权申诉 / 19

独立于过程模式的驱动器模型.pdf

  • 上传人:a***
  • 文档编号:4582974
  • 上传时间:2018-10-21
  • 格式:PDF
  • 页数:19
  • 大小:953.06KB
  • 摘要
    申请专利号:

    CN03145221.3

    申请日:

    2003.06.25

    公开号:

    CN1470989A

    公开日:

    2004.01.28

    当前法律状态:

    授权

    有效性:

    有权

    法律详情:

    专利权的转移IPC(主分类):G06F 9/48变更事项:专利权人变更前权利人:微软公司变更后权利人:微软技术许可有限责任公司变更事项:地址变更前权利人:美国华盛顿州变更后权利人:美国华盛顿州登记生效日:20150528|||授权|||实质审查的生效|||公开

    IPC分类号:

    G06F9/48

    主分类号:

    G06F9/48

    申请人:

    微软公司;

    发明人:

    R·L·卡伦德; N·加纳帕蒂

    地址:

    美国华盛顿州

    优先权:

    2002.06.26 US 10/185,122

    专利代理机构:

    上海专利商标事务所

    代理人:

    李家麟

    PDF完整版下载: PDF下载
    内容摘要

    通过定义共同接口,相对硬件适配器,支持为内核模式及用户模式处理所共有的操作的单一实现的方法、系统和电脑程序产品。提供操作的对应内核模式及用户模式实现。对于给定过程,对公用接口的呼叫映射到内核模式过程的内核模式实现及用户模式的用户模式实现。映射可以在运行时间实现或是静态的。共有的操作可提供对硬件适配器的用户模式过程直接接入(诸如用来收发信息)而无须切换到内核模式。亦可提供为内核模式处理所特有的操作的内核模式实现,诸如规定要执行的硬件适配器的安全参数,或通过硬件适配器启动和终止通信。

    权利要求书

    1.用于包括一或更多能在(i)相对较少限制内核模式和(ii)相对较多限
    制用户模式中的至少一个中工作的过程以及能使所述一或更多过程通过通信
    链路与至少一硬件设备通信的硬件适配器的计算机系统,一种支持相对硬件
    适配器为内核模式处理和用户模式处理所共有的一或更多操作的单个实现的
    方法,该方法包括如下动作:
    确定为内核模式处理和用户模式处理所共有的至少一操作的公共接
    口名称;
    提供对应该名称的所述至少一操作的内核模式实现;
    提供对应该名称的所述至少一操作的用户模式实现;以及
    对于给定过程,如果给定过程是内核模式过程,将一或更多公共接
    口呼叫映射(i)到内核模式实现,及实现如果给定过程是用户模式过程,
    (ii)到用户模式。
    2.如权利要求1所述的方法,其特征在于,所述至少一操作对应无须切换到
    内核模式而提供对硬件适配器的用户模式过程的直接接入。
    3.如权利要求2所述的方法,其特征在于,还包括提供为内核模式处理所特
    有的一或更多操作的内核模式实现这一动作。
    4.如权利要求3所述的方法,其特征在于,所述为内核模式处理所特有的一
    或更多操作对应通过硬件适配器启动和终止通信的一或更多通信操作,而为
    内核模式处理和用户模式处理所共有的至少一操作的公共接口对应通过硬件
    适配器收发信息的通信操作。
    5.如权利要求3所述的方法,其特征在于,为内核模式处理所特有的一或更
    多操作中的至少一个规定要执行的硬件适配器的安全参数。
    6.如权利要求1所述的方法,其特征在于,映射出现在执行时间。
    7.如权利要求1所述的方法,其特征在于,映射是静态的。
    8.如权利要求1所述的方法,其特征在于,硬件适配器是InfiniBand主信道
    适配器。
    9.对于包括一或更多能在(i)相对较少限制内核模式和(ii)相对较多限
    制用户模式中的至少一个中工作的过程以及能使所述一或更多过程通过通信
    链路与至少一硬件设备通信的硬件适配器的计算机系统,一种包括承载实现
    一种支持相对硬件适配器为内核模式处理和用户模式处理所共有的一或更多
    操作的单个实现的方法的计算机可执行指令的计算机可读媒体的计算机程序
    产品,所述方法包括如下动作:
    确定为内核模式处理和用户模式处理所共有的至少一操作的公共
    接口名称;
    提供对应该名称的所述至少一操作的内核模式实现;
    提供对应该名称的所述至少一操作的用户模式实现;以及
    对于给定过程,将一或更多公共接口呼叫映射(i)到内核模式实
    现如果给定过程是内核模式过程及(ii)到用户模式实现如果给定过程是
    用户模式过程。
    10.如权利要求9所述的计算机程序产品,其特征在于,所述至少一操作对
    应一通信操作,该通信操作无须切换到内核模式而提供对硬件适配器的用户
    模式过程直接接入。
    11.如权利要求10所述的计算机程序产品,其特征在于,所述方法还包括提
    供为内核模式处理所特有的一或更多操作的内核模式实现这样一动作。
    12.如权利要求11所述的计算机程序产品,其特征在于,为内核模式处理所
    特有的一或更多操作对应通过硬件适配器启动和终止通信的一或更多通信操
    作,并且,内核模式处理和用户模式处理共有的至少一操作的共有接口对应
    通过硬件适配器收发信息的通信操作。
    13.如权利要求11所述的计算机程序产品,其特征在于,为内核模式处理所
    特有的一或更多操作中的至少一个规定要执行的硬件适配器的安全参数。
    14.如权利要求9所述的计算机程序产品,其特征在于,映射出现在执行时
    间。
    15.如权利要求9所述的计算机程序产品,其特征在于,映射是静态的。
    16.如权利要求9所述的计算机程序产品,其特征在于,硬件适配器是InfiniBand
    主信道适配器。
    17.一种相对硬件通信适配器支持为内核模式处理和用户模式处理共有的一
    或更多操作的单个实现的计算机程序产品,所述计算机程序产品包括携带计
    算机可执行指令的计算机可读媒介,其特征在于,该计算机程序产品包括:
    标识为内核模式处理和用户模式处理共有的一或更多操作的一共有
    名称和参数列表的一接口模块;
    实现执行于内核模式中的一或更多操作的一内核模式实现模块;
    实现执行于用户模式中的一或更多操作的一用户模式实现模块;及
    一分配模块,如果呼叫过程是内核模式过程,该模块激活内核模式
    实现模块,而如果呼叫过程是用户模式过程,该模块激活用户模式实现模
    块。
    18.如权利要求17所述的计算机程序产品,其特征在于,用户模式实现模块
    无须切换到内核模式而提供对硬件通信适配器的直接接入。
    19.如权利要求17所述的计算机程序产品,其特征在于,还包括实现为内核
    模式处理所特有的一或更多操作的一仅内核模式实现模块。
    20.如权利要求19所述的计算机程序产品,其特征在于,为内核模式处理所
    特有的一或更多操作中的至少一个提供要执行的硬件通信适配器的安全参
    数。
    21.如权利要求19所述的计算机程序产品,其特征在于,为内核模式处理所
    特有的一或更多操作包括一或更多优先操作,并且,为内核模式处理和用户
    模式处理共有的一或更多操作对应一或更多非优先操作。
    22.如权利要求21所述的计算机程序产品,其特征在于,一或更多优先操作
    用于通过硬件通信适配器启动和终止通信,并且,一或更多非优先操作用于
    通过硬件通信适配器收发信息。
    23.如权利要求17所述的计算机程序产品,其特征在于,分配模块静态接入
    内核模式实现模块和用户模式实现模块。
    24.如权利要求17所述的计算机程序产品,其特征在于,分配模块动态地在
    执行时间激活内核模式实现模块或用户模式实现模块。
    25.如权利要求17所述的计算机程序产品,其特征在于,还包括实现硬件通
    信适配器的通用函数的一析取硬件通信适配器模块。
    26.如权利要求25所述的计算机程序产品,其特征在于,内核模式实现模块
    是实现析取硬件通信适配器模块的通用函数的硬件通信适配器专用操作的微
    端口模块的一部分。
    27.如权利要求17所述的计算机程序产品,其特征在于,硬件通信适配器是
    InfiniBand主信道适配器。

    说明书

    独立于过程模式的驱动器模型

    技术领域

    本发明涉及计算机硬件的驱动器软件领域。具体地说,本发明涉及相对
    硬件适配器支持为内核模式处理和用户模式处理共有的一或更多操作的单个
    实现的方法、系统和计算机程序产品。

    背景技术

    随着计算机硬件性能的提升,计算机软件的运行成为整体系统性能的一较
    重要的因素。考虑到要交换的信息的频率和数量,和与硬件设备通信的硬件
    适配器相互作用的有效计算机软件尤其重要。一常见通信瓶颈涉及各种软件
    层和时常出现于应用和硬件适配器间的过程模式间的相应转换。

    许多操作系统提供至少两过程模式:(i)相对得到较少信任因而受到较
    多限制的用户模式及(ii)相对得到较多信任因而受到较少限制的内核模式。
    通常,应用过程运行于用户模式内,过程是分离的且不会干扰彼此的资源。
    当发出系统呼叫、产生例外或差错、出现间断等时,用户过程切换到内核模
    块。运行于内核模式中的过程是优先的并可接入全部计算机资源(诸如全部
    可用存储),而没有适用于用户模式过程的限制。因为操作系统内核用作计
    算机资源的关守,对资源的直接接入通常受限于内核模式过程。用户模式过
    程和内核模式过程间的区分亦可得到计算机硬件的支持。例如,许多微处理
    器有支持用户模式过程和内核模式过程间的区分的处理模式。

    因为对某些资源的接入受限于内核模式过程,用户模式过程必须转换或切
    换到内核模式过程来获取接入。接入后,过程切换回用户模式用于进一步的
    执行。不过,切换过程模式可对性能有重大影响。因此,为降低与切换过程
    模式相关的性能衰减,一些硬件适配器支持在某些参数内的安全措施的执行,
    这样,用户模式应用直接接入硬件,不必转换到内核模式。因此,一些软件
    驱动器对一些操作旁路内核模式。

    尽管允许用户模式过程直接接入硬件资源,计算机系统的整体安全性通过
    将接入限定于规定的安全参数内而保持不变。对于硬件适配器,这些安全参
    数是用内核模式过程设置的。实质上,安全参数表示特定操作可直接接入某
    些操作。硬件适配器拒绝其他过程的类似接入努力,并拒绝超越安全参数授
    予的允许范围的过程的接入努力。

    某些操作对用户模式和内核模式都可实现。然而,在每个模式中实现同一
    操作带来软件开发过程中的低效率。考虑,例如,存储分配。尽管在每种情
    况下分配一存储区,内核模式中的存储分配和用户模式中的存储分配有不同
    的要求。例如,内核模式存储分配保证某些对齐条件以促进硬件相互作用,
    而对齐条件对用户模式存储分配是无关的。不过,从硬件驱动器角度看,全
    部所需是一存储区。结果,接入硬件适配器的单一操作通常有分离的用户模
    式和内核模式实现。因此,需要相对硬件适配器支持为内核模式处理和用户
    模式处理共有的一或更多操作的单个实现的方法、系统和计算机程序产品。

    发明内容

    本发明涉及相对硬件适配器支持为内核模式处理和用户模式处理共有的操
    作的单个实现的方法、系统和计算机程序产品。对为内核模式处理和用户模
    式处理共有的至少一操作,定义一共有接口。提供所述至少一操作的对应内
    核模式和用户模式实现。对一给定过程,对所述接口的呼叫映射到内核模式
    实现(如果该给定过程是内核模式过程)和映射到用户模式实现(如果该给
    定过程是用户模式过程)。映射可执行于运行时间或是静态的。

    所述共有操作无须切换到内核模式而提供对硬件适配器的用户模式过程直
    接接入。也可提供为内核模式过程所特有的一或更多操作的内核模式实现。
    例如,通过硬件适配器启动和终止通信的操作对内核模式处理是独特的,而
    通过适配器收发信息的操作为用户模式处理和内核模式处理所共有。特别地,
    为内核模式过程所特有的一操作标识要执行的硬件适配器的安全参数。

    本发明其它的特点和优点将在后面的描述中给出,部分地从描述中显而易
    见,或通过使用本发明获得。本发明的特点和优点可通过所附权利要求中特
    别指出的仪器和组合来实现和获得。本发明的这些和其他特点从下列描述和
    所附权利要求变得更显而易见,或通过此后给出的本发明的使用来获得。

    附图说明

    为描述获得本发明的上述和其他优点和特点所用的方式,参照所附权利要
    求中说明的相关具体实施例对上面简述的本发明进行较具体的描述。认识到
    附图只描述本发明的典型实施例并因而不限制其范围,通过使用附图更具体、
    更详细地描述和说明本发明,其中:

    图1示出根据本发明支持共有用户模式和内核模式操作的单个实现的硬件
    驱动器模型的高级框图;

    图2A-2C根据本发明说明一示例硬件驱动器模型;

    图3根据本发明示出支持共有用户模式和内核模式操作的单个实现的方法
    的示例动作;及

    图4说明为本发明提供合适的操作系统的示例系统。

    具体实施方式

    本发明涉及相对硬件适配器支持为内核模式处理和用户模式处理共有的
    操作的单个实现的方法、系统和计算机程序产品。提供为操作的内核模式和
    用户模式实现的一共有接口。如果呼叫过程是用户模式过程,呼叫映射到用
    户模式实现,而如果呼叫过程是内核模式过程,呼叫映射到内核模式实现。
    如下面就图4更详细的讨论,本发明的一些实施例可包括包括各种计算机硬
    件的一或更多专用和/或一或更多通用计算机。

    图1示出根据本发明支持共有用户模式和内核模式操作的单个实现的硬
    件驱动器模型的高级框图。应用110通过用户模式接口120接入适配器150。
    一些操作映射到内核模式实现160,而其他操作映射到用户模式实现130。注
    意:用户模式实现130提供对适配器150的直接接入,无须切换到内核模式。
    因此,应用110能通过用户模式实现130接入适配器150,所用时间比内核模
    式实现140所需时间少很多。

    使对应操作实现于用户模式实现130和内核模式实现140两者是需要的,
    理由有至少两条。首先,内核模式实现130通常包括对适配器150可能的所
    有操作,这样无用户模式界面120的应用能与适配器150相互作用。考虑到
    从内核模式切换到用户模式(及从用户模式切换到内核模式)的开销,呼叫
    用户模式实现130(对能实现于用户模式的操作)的内核模式实现140通常导
    致少于最佳性能,特别如此,因为用户模式实现130实现趋向时常出现的操
    作,诸如收发信息。(也要注意的是,对到达内核模式实现140的应用,从
    用户模式到内核模式的切换已发生,另一切换随之从内核模式切换回用户模
    式。)

    其次,内核模式实现140通常包括为内核模式特有的操作。这些操作时
    常使用更基本的操作用来从适配器150收发信息。然而,如上所示,诸如收
    发信息之类的频繁操作很可能是包括于用户模式实现130中的侯选,以获得
    避免过程从用户模式转换到内核模式的性能益处。与上述情况相似,在接入
    用户模式实现130中从内核模式切换到用户模式和从用户模式切换回内核模
    式的开销导致非最佳性能。

    因为用户模式处理和内核模式处理中的差异,给定操作的用户模式实现
    倾向于不同于内核模式实现。通常,一操作的每个用户模式实现130提供与
    该操作的对应内核模式实现140同样的函数,但适于用户模式处理。然而,
    根据本发明,且如关于图2A-2C中所示的示例硬件驱动器模型的较详细的描
    述,用户模式实现130和内核模式实现140共用一共有接口。(图1中,该
    共有借口是用户模式实现130和内核模式实现140的部分且未单独示出。)
    因此,可对一内核模式通信操作和一用户模式通信操作写同一源码。使用同
    一源码(例如:从一共同源派生的静态库)是一很大的优点:因为需写和测
    试的程序码较少而减少开发时间、测试时间和编程差错。共有接口也可给开
    发者提供关于如何基于通过共有接口可供的例程设计软件的有意义的指导。

    当然,一些操作为内核模式实现140特有。例如,因为内核负责实施安
    全,启动和终止对适配器的接入通过内核模式实现140出现。一旦内核模式
    实现140(在应用110的指导下)向适配器150提供适当的安全参数,适配器
    150在得到接入时执行相应安全检查,诸如验证接入过程已通过内核模式实现
    140得到正确认证。

    图2A-2C根据本发明说明支持共有用户模式和内核模式操作的单个实现
    的一示例硬件驱动器模型。InfiniBand应用210A通过用户模式库230A和内
    核模式微端口驱动器240A接入主信道适配器(“HCA适配器”)。某一通
    过用户模式库230A(同内核模式微端口驱动器240A形成对比)对HCA适配
    器280A的接入是可行的,因为InfiniBand表示向适配器卸载某一安全检查和
    其他处理的硬件体系结构的一例子。启动和终止接入通过内核模式操作得到
    控制以保证适当的安全级。然而,启动后,频繁通信操作(诸如涉及收发数
    据的操作)的安全在HCA硬件处得到加强,支持特别快的用户模式接入。例
    如,如下面关于图2C的较详细的描述,内核模式微端口驱动器240A负责生
    成和破坏通信队列,而用户模式库230A允许向HCA适配器280A处的通信
    队列的用户模式数据传送。

    InfiniBand应用210A首先呼叫用户模式InfiniBand库220A,用户模式
    InfiniBand库220A通过寄存数据库中的规定配置信息知道用户模式库230A。
    在一种意义上,用户模式库230可认为是用户模式InfiniBand库220A的延展。
    用户模式库230A为其支持的例程输出众所周知的应用程序接口(“API”)
    (以分配表的形式)。在一实施例中,用户模式库230A实施为动态链路库
    (DLL)。尽管不一定需要,InfiniBand的优点多是通过由用户模式库230A
    提供的内核旁路IO特点实现的。

    InfiniBand库220A表示析取的通用HCA设备接口。用户模式库230A的
    厂家专用库232A将InfiniBand库220A的析取映射到HCA适配器280A的硬
    件专用操作。如下面较详细的描述,同一厂家专用库作为微端口驱动器240A
    的厂家专用库242A出现。因此,厂家专用库232A和厂家专用库242A表示
    (至少部分地)过程模式独立(PMI)HCA IO接入库。

    用户模式InfiniBand库220A也通过Hcaport 250A和微端口驱动器240A
    接入HCA适配器280A。除厂家专用库242A外,微端口驱动器240A还包括
    内核模式适配器控制和帮助程序函数244A和类代理246A。下面结合图2B提
    供关于Hcaport 250A、微端口驱动器240A和HCA适配器280A间关系的其他
    细节。Hcaport 250A也允许从其它内核模式客户270A(例如:使用Hcaport
    客户API的RNDIS微端口)接入HCA适配器280A。Hcaport 250A启动各种
    类管理子系统,包括子网管理器262A、连接管理器264A和性能管理器266A。

    接下来转到图2B,Hcaport 250B提供析取的通用HCA设备接口。与用户
    模式库230A的厂家专用库232A相似,微端口驱动器240B和厂家专用库242B
    将InfiniBand库250B的析取映射到HCA适配器280B的硬件专用操作。如上
    所示,同一厂家专用PMI库作为微端口驱动器240B的厂家专用库242B和用
    户模式库230A的厂家专用库232A出现。(内核专用例程在内核模式适配器
    控制和帮助程序函数244B中实现。)另外,Hcaport 250B为微端口驱动器的
    类代理246B准备一个环境。

    Hcaport 250B建立一操作环境,该操作环境向微端口240B提供操作系统
    功能,诸如存储分布、寄存接入及端口/寄存器接入。不允许对操作系统的直
    接呼叫,以使微端口开发商不受某些设计复杂性的影响,从而促进厂家专用
    库232A和厂家专用库242B的单一源的目标。Hcaport 250B也串行化微端口
    驱动器240B要求,这样,微端口开发商不必解决串行化问题。从操作系统的
    非页面存储池分配存储资源。

    值得注意的是,Hcaport 250B支持向InfiniBand客户的InfiniBand资源的
    管理。与之形成对比的是,微端口驱动器240B不提供InfiniBand资源管理,
    而是用作Hcaport的管理方法的延伸。微端口驱动器240B使Hcaport 250B对
    HCA适配器280B的厂家专用操作语义屏蔽。微端口信息结构向Hcaport 250B
    提供微端口控制/帮助程序和PMI IO接入回叫例程。

    图2C示出InfiniBand应用210C通过用户模式InfiniBand库220C和或者
    有厂家专用库232C的用户模式库230C或者有适配器帮助程序函数244C的
    Hcaport 250C和微端口240C而接入HCA适配器280C。适配器控制和帮助程
    序函数解决两个要求。第一要求是通常驱动器意义的HCA适配器280C的通
    用控制和操作,诸如启动和停止微端口驱动器、IO总线资源分配和管理(IO、
    存储和中断)、处理即插即用命令及处理电源管理命令。

    第二要求涉及支持内核模式帮助程序函数。它们是由微端口执行以提供有
    序通信资源管理的优先函数,包括:(i)保护域管理,诸如保护域的生成
    和破坏及按需分配保护域;(ii)翻译和保护表管理,诸如翻译和保护表的
    生成和破坏以及表目控制和操纵,包括存储区和存储窗口的生成和破坏;(iii)
    事件请求管理,诸如事件队列的生成和破坏及对来自事件队列的事件的处理;
    (iv)完成队列管理,诸如完成队列的生成和破坏及完成队列对HCA适配器
    的绑定和非绑定;(v)工作队列管理,诸如工作队列的生成和破坏、支持
    对工作队列属性编程及工作队列对HCA适配器的绑定;(vi)地址矢量表管
    理,诸如地址矢量表的生成和破坏(在一些情况下这可以是保护域管理功能
    的部分);及(vii)多播支持,诸如多播组的生成和破坏。

    过程模式独立库(例如:厂家专用库232C和厂家专用库242B)静态地连
    接微端口240C和用户模式库230C。如上所述,通过使该库成为共有组件,
    可减少HCA微端口的开发、维护和测试。通常,PMI库的函数有一或更多传
    送给它们的上下文专用延伸区。根据处理上下文,为一共同命名的函数呼叫
    或映射相应的用户模式或内核模式实现。

    PMI厂家专用库提供3个通用类型的功能:(i)保护域/完成域/工作域
    (PD/CQ/WQ)生成和破坏的用户模式侧,(ii)向分配给用户模式处理的队
    列对寄存器张贴IQ请求,及(iii)经绑定请求的存储窗口操纵。PD/CQ/WQ
    生成和破坏支持的PMI例程运行于两步骤过程。第一步骤获取微端口在内核
    模式下分配队列对所需资源。第二步骤检查结果,且如果请求失败,释放分
    配给过程的资源。IO请求直接操纵分配的队列对。几乎不对IO请求和存储窗
    口操纵强加体系结构,因为高带宽和低等待时间倾向于是重要因素。

    图3根据本发明示出支持共有用户模式和内核模式操作的单个实现的方
    法的示例动作。尽管这些动作是以特定顺序描述或拥有的,本发明不必局限
    于任一特定排序或动作组合。支持相对硬件适配器为内核模式处理和用户模
    式处理所共有的一或更多操作的单个实现包括定义(310)为内核模式处理和
    用户模式处理所共有的至少一操作的共有接口的动作;提供(320)对应该名
    称的所述至少一操作的内核模式实现的动作;提供(330)对应该名称的所述
    至少一操作的用户模式实现的动作;提供(340)为内核模式处理所特有的一
    或更多操作的内核模式实现;及映射(350)一或更多共有接口呼叫到内核模
    式实现(如果给定过程是内核模式过程)和到用户模式实现(如果给定过程
    是用户模式过程)。

    如下面更详细的讨论,本发明的实施例包括一或更多专用和/或一或更多包
    括各种计算机硬件的通用计算机。本发明范围内的实施例还包括计算机可读
    媒介,所述计算机可读媒介传送或有存储于其上的计算机可执行指令或数据
    结构。这样的计算机可读媒介可以是可由通用或专用计算机接入的可用媒介。
    作为示例而非限制,这样的计算机可读媒介包括RAM、ROM、EEPROM、
    CD-ROM或其他光盘存储器、磁盘存储器或其他磁存储设备,或可用来以计
    算机可执行指令或数据结构形式传送或存储所需程序码方式且可由通用或专
    用计算机接入的任一其他媒介。

    当信息通过网络或另一通信连接(有线的、无线的或有线无线组合的)传
    送或提供给计算机,计算机适当地将该连接视作计算机可读媒介。这样,任
    一这样的连接适当地称为计算机可读媒介。以上的组合也应包括在计算机可
    读媒介的范围内。计算机可执行指令包括,例如,使通用计算机、专用计算
    机或专用处理设备执行某一功能或某一组功能的指令和数据。

    图4及以下的讨论提供对实施本发明的合适的计算环境的简要的大体的
    描述。尽管不要求,将在由计算机在网络环境中执行的计算机可执行指令(诸
    如程序模块)的一般上下文中描述本发明。通常,程序模块包括执行特定任
    务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。计算
    机可执行指令、相关数据结构和程序模块表示用来执行此处所揭示的方法的
    步骤的程序码方式的例子。这样的可执行指令或相关数据结构的特定序列表
    示用来实现这样的步骤中所描述的功能的相应动作的例子。

    业内人士知道,本发明可实现于有多种计算机系统配置的网络计算环境
    中,包括个人电脑、手持设备、多处理器系统、基于微处理器或可编程消费
    电子、网络PC、小型计算机、大型计算机等等。本发明也可执行于分布计算
    环境,在分布计算环境中任务由通过通信网络链接(通过有线链路、无线链
    路或有线无线链路的组合)的本地和远程处理设备执行。在分布计算环境中,
    程序模块可位于本地和远程内存存储设备两者中。

    参考图4,用来实现本发明的示例系统包括通常计算机420形式的通用计
    算设备(包括处理单元421、系统内存422和将包括系统内存422的各种系统
    组件耦合到处理单元421的系统总线423)。系统总线423是包括内存总线或
    内存控制器的数个类型的总线结构中的任何一个、周围总线和使用多种总线
    体系结构中的任一种的本地总线。系统存储器包括只读存储器(ROM)424
    和随机存取存储器(RAM)425。基本输入输出系统(BIOS)426存储于ROM424
    中,基本输入输出系统(BIOS)426含有帮助在计算机420的元件间传送信
    息(诸如在启动期间)的基本例程。

    计算机420也可包括用来读自和写到磁盘439的磁硬盘驱动器427、用来
    读自和写到移动磁盘429的磁盘驱动器428和用来读自和写到移动光盘431(诸
    如CD-ROM或其他光媒介)的光盘驱动器430。磁硬盘驱动器427、磁盘驱动
    器428和光盘驱动器430分别通过硬盘驱动器接口432、磁盘驱动器接口433
    和光驱动器接口434连接系统总线423。驱动器及其相关计算机可读媒介向计
    算机420提供计算机可执行指令、数据结构、程序模块和其他数据的非易变
    存储。尽管此处描述的示例环境使用磁硬盘439、移动磁盘429和移动光盘
    431,可使用用来存储数据的其它类型的计算机可读媒介,包括磁带、闪存卡、
    数字多用途磁盘、伯努利盒式磁盘、RAM、ROM等等。

    包括一或更多程序模块的程序码方式存储于硬盘439、磁盘429、光盘431、
    ROM424或RAM425之上,包括操作系统435、一或更多应用程序436、其他
    程序模块437和程序数据438。用户通过键盘440、指示器442或其他输入设
    备(未示出),诸如麦克风、控制杆、游戏填充器、卫星天线、扫描仪等等
    向计算机420输入命令和信息。这些和其他输入设备时常通过耦合系统总线423
    的串行口接口446连接处理单元421。或者,输入设备由其他接口连接,诸如
    并行口、游戏端口或通用串行总线(USB)。监视器447或另一显示设备通过
    接口(诸如视频适配器448)也连接系统总线423。除监视器外,个人电脑通
    常包括其他周围输出设备(未示出),诸如扬声器和打印机。

    计算机420工作于使用与一或更多远程计算机(诸如远程计算机449a和
    449b)的逻辑连接的联网环境中。远程计算机449a和449b可以各是另一个人
    电脑、服务器、路由器、网络PC、对等设备或其他共有网络节点,且通常包
    括上面相对计算机420描述的元件中的许多或全部,尽管图4只说明内存存
    储设备450a和450b及其相关应用程序436a和436b。图4描述的逻辑连接包
    括局域网(LAN)451和广域网(WAN)452,此处提到它们是示例而非限制。
    这样的联网环境在办公室范围或企业范围的计算机网、内联网和因特网中是
    常见的。

    当用于LAN联网环境中时,计算机420通过网络接口或适配器453连接
    本地网451。当用于WAN联网环境中时,计算机420包括调制解调器454、
    无线链路或其他通过广域网452建立通信的方式(诸如因特网)。调制解调
    器454(内置或外置)通过串行口接口446连接系统总线423。在联网环境中,
    相对计算机420描述的程序模块或其部分,存储于远程内存存储设备。可以
    理解的是,所示网络连接是示例性的,可使用其他通过广域网452建立通信
    的方式。

    可不脱离本发明的精神或基本特点而以其他特别形式实施本发明。所述实
    施例在所有方面都只是示例性的而非限制性的。因此,本发明的范围由所附
    权力要求而非前述表示。所有在这些权利要求的等价物的意义和范围内的变
    化都包括在其范围内。

    关 键  词:
    立于 过程 模式 驱动器 模型
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:独立于过程模式的驱动器模型.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4582974.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1