【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
1.专利
本专利技术涉及用于与支持多个设备的网络适配器接口的方法、系统和程序。2.相关领域描述在网络环境中,主计算机上的网络适配器(诸如以太网卡、光纤信道卡等)接收输入/输出(I/O)请求或对由主机发起的I/O请求的响应。通常,主计算机操作系统包括与网络适配器硬件通信的设备驱动器(device driver),以管理在网络上进行传输的I/O请求。设备驱动器要求大量的主处理器资源来处理对网络适配器的网络传输请求。一种降低主处理器的负荷的技术是使用传输控制协议(TCP)/因特网协议(IP)卸载引擎(TOE),其中TCP/IP协议相关的操作由与设备驱动器形成对比的网络适配器硬件来支持,由此使得主处理器不必执行TCP/IP协议相关的操作。传送协议操作包括用校验和以及其他信息将数据封装为TCP/IP分组(packet),并且解封装从网络上接收的TCP/IP分组,以访问有效载荷(payload)或数据。网络适配器可以具有针对不同转移协议来处理流量的能力。对于网络适配器所支持的每个协议,主操作系统可以加载不同的软件设备驱动器来使操作系统能够相对于该协议来与网络适配器接口。然后每个设备驱动器会将分组转移到网络适配器,以进行进一步的处理和传输。附图简要说明现在参考附图,在所有附图中类似的参考数字代表对应的部分附图说明图1示出在其中实现本专利技术的方面的计算环境;图2根据本专利技术的实施方案示出由操作系统执行以与网络适配器通信的操作;图3、4、5和6根据本专利技术的实施方案示出被执行以在操作系统和网络适配器之间进行接口的操作;图7示出可以与所描述的实施方案一起使用 ...
【技术保护点】
一种用于与支持多个设备的设备硬件接口的方法,所述方法包括:初始化设备接口驱动器,以针对操作系统将所述设备硬件表示为虚拟总线,并且针对所述操作系统将在所述设备硬件中被支持的每个设备表示为附接到所述虚拟总线的设备;初始化所述设备硬件;访问所述设备硬件,以确定被所述设备硬件支持的设备;针对被所述设备硬件支持的每个确定的设备生成一个设备对象,其中每个生成的设备对象针对所述操作系统表示所述确定的设备;以及向所述操作系统报告所述确定的设备,其中所述操作系统针对被所述设备硬件支持的所述被报告的设备中的每一个加载设备驱动器。
【技术特征摘要】
【国外来华专利技术】US 2003-11-12 10/712,2071.一种用于与支持多个设备的设备硬件接口的方法,所述方法包括初始化设备接口驱动器,以针对操作系统将所述设备硬件表示为虚拟总线,并且针对所述操作系统将在所述设备硬件中被支持的每个设备表示为附接到所述虚拟总线的设备;初始化所述设备硬件;访问所述设备硬件,以确定被所述设备硬件支持的设备;针对被所述设备硬件支持的每个确定的设备生成一个设备对象,其中每个生成的设备对象针对所述操作系统表示所述确定的设备;以及向所述操作系统报告所述确定的设备,其中所述操作系统针对被所述设备硬件支持的所述被报告的设备中的每一个加载设备驱动器。2.如权利要求1所述的方法,还包括向所述操作系统报告所述确定的设备依赖于所述虚拟总线,其中响应于被通知所述确定的设备和虚拟总线相关,所述操作系统将不移除表示所述虚拟总线的所述设备接口驱动器,直到与所述确定的设备相关联的所述设备驱动器被移除。3.如权利要求1所述的方法,还包括向所述操作系统报告由所述设备接口驱动器表示的所述虚拟总线的功率状态不可以被更改,直到表示附接到所述虚拟总线的设备的所有所述设备驱动器使它们的功率状态被类似地更改。4.如权利要求1所述的方法,其中所述硬件设备包括网络适配器,并且其中在所述网络适配器中可获得的每个设备支持针对不同通信协议的协议引擎。5.如权利要求4所述的方法,其中每个协议引擎根据通信协议和网络协议处理分组,其中每个传送引擎支持不同的通信协议,但使用相同的网络协议。6.如权利要求1所述的方法,还包括从一个设备驱动器接收分组;在所述设备硬件中确定设备队列,所述设备队列针对被与所述设备驱动器对应的所述设备硬件支持的所述设备来排队分组;以及将所述接收的分组写到所述确定的队列。7.如权利要求1所述的方法,还包括从所述设备硬件接收关于一个分组的传输的通知;针对所述网络适配器中处理过所述分组的所述设备,确定所述设备驱动器;以及将指示从所述设备硬件接收到所述通知的通知传输到所述确定的设备驱动器。8.如权利要求1所述的方法,还包括接收由所述设备硬件提供的分组的指示;针对被所述网络适配器支持的处理过所述提供的分组的所述设备,确定所述设备驱动器;调用呼叫程序,以使所述确定的设备驱动器处理所述提供的分组。9.如权利要求1所述的方法,其中所有所述设备驱动器通过所述设备接口驱动器访问被所述设备硬件支持的设备。10.如权利要求1所述的方法,其中被确定为在所述设备硬件中可获得的所述设备包括比被所述设备硬件支持的所有所述设备少的设备。11.如权利要求1所述的方法,还包括响应于检测到被所述设备硬件支持的设备的配置中的变化,向所述操作系统发信号通知在所述设备硬件中可获得的设备的所述变化的配置,其中所述操作系统能够加载或解加载设备驱动器,以支持在所述设备硬件中可获得的设备的所述变化的配置。12.如权利要求1所述的方法,其中初始化所述设备硬件、访问所述设备硬件以确定被所述设备硬件支持的设备、生成所述设备对象以及向所述操作系统报告所述确定的设备的所述操作由所述设备接口驱动器执行。13.如权利要求1所述的方法,其中一个设备包括支持iSCSI协议和TCP协议的协议引擎,其中一个设备包括支持卸载的LAN协议的协议引擎,并且其中一个设备包括支持非卸载的LAN协议的协议引擎。14.一种系统,包括处理器;由所述处理器执行的操作系统;支持多个设备的网络适配器;设备接口驱动器,所述设备接口驱动器针对所述操作系统将所述网络适配器表示为虚拟总线,并且针对所述操作系统将在所述设备硬件中被支持的每个设备表示为附接到所述虚拟总线的设备,其中,当所述处理器执行所述设备接口驱动器时,被使能为(i)访问所述网络适配器,以确定被所述网络适配器支持的设备;(ii)针对每个确定的被所述网络适配器支持的设备生成一个设备对象,其中每个生成的设备对象针对所述操作系统表示所述确定的设备;以及(iii)向所述操作系统报告所述确定的设备,其中所述操作系统针对被所述网络适配器支持的所述被报告的设备中的每一个加载设备驱动器,并且其中对所述操作系统来说每个确定的设备被视为附接到所述虚拟总线。15.如权利要求14所述的系统,其中,当所述处理器执行所述设备接口驱动器时,还被使能为向所述操作系统报告所述确定的设备依赖于所述虚拟总线,其中响应于被通知所述确定的设备和虚拟总线相关,所述操作系统将不移除表示所述虚拟总线的所述设备接口驱动器,直到与所述确定的设备相关联的所述设备驱动器被移除。16.如权利要求14所述的系统,其中,当所述处理器执行所述设备接口驱动器时,还被使能为向所述操作系统报告由所述设备接口驱动器表示的所述虚拟总线的功率状态不可以被更改,直到表示附接到所述虚拟总线的设备的所有所述设备驱动器使它们的功率状态被类似地更改。17.如权利要求14所述的系统,其中在所述网络适配器中可获得的每个设备支持针对不同通信协议的协议引擎。18.如权利要求17所述的系统,其中每个协议引擎根据通信协议处理分组,其中每个协议引擎支持不同的通信协议,但使用相同的网络协议。19.如权利要求14所述的系统,其中,当所述处理器执行所述设备接口驱动器时,还被使能为从一个设备驱动器接收分组;在所述网络适配器中确定设备队列,所述设备队列针对被与所述设备驱动器对应的所述设备硬件支持的所述设备来排队分组;以及将所述接收的分组写到所述确定的队列。20.如权利要求14所述的系统,其中,当所述处理器执行所述设备接口驱动器时,还被使能为从所述网络适配器接收关于一个分组的传输的通知;针对所述网络适配器中处理过所述分组的所述设备,确定所述设备驱动器;以及将指示从所述设备硬件接收到所述通知的通知传输到所述确定的设备驱动器。21.如权利要求14所述的系统,其中,当所述处理器执行所述设备接口驱动器时,还被使能为接收由...
【专利技术属性】
技术研发人员:拉杰什萨赫,阿尼尔凯沙瓦默西,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。