CN101048767A - 动态资源分配 - Google Patents

动态资源分配 Download PDF

Info

Publication number
CN101048767A
CN101048767A CNA2005800353591A CN200580035359A CN101048767A CN 101048767 A CN101048767 A CN 101048767A CN A2005800353591 A CNA2005800353591 A CN A2005800353591A CN 200580035359 A CN200580035359 A CN 200580035359A CN 101048767 A CN101048767 A CN 101048767A
Authority
CN
China
Prior art keywords
resource
data
network interface
network
interface unit
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
Application number
CNA2005800353591A
Other languages
English (en)
Other versions
CN101048767B (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.)
Xilinx Inc
Original Assignee
Level 5 Networks Inc
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 Level 5 Networks Inc filed Critical Level 5 Networks Inc
Publication of CN101048767A publication Critical patent/CN101048767A/zh
Application granted granted Critical
Publication of CN101048767B publication Critical patent/CN101048767B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Bus Control (AREA)
  • Small-Scale Networks (AREA)
  • Engine Equipment That Uses Special Cycles (AREA)
  • Silicates, Zeolites, And Molecular Sieves (AREA)
  • Storage Device Security (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
  • Acyclic And Carbocyclic Compounds In Medicinal Compositions (AREA)

Abstract

一种用于在网络和数据处理设备间提供接口的网络接口设备,该网络接口设备具有:多个不同类型的资源,用于支持接口,以及一个总线接口,用于与数据处理设备依靠一种通过对总线上的地址进行寻址在总线上发送数据的总线进行接口,将该网络接口设备设置为可以通过总线上各自的地址对每个资源进行寻址。

Description

动态资源分配
本发明涉及对设备,如网络接口设备,运行中所使用的资源的配置。
图1示出了通过网络接口卡(NIC)3连接于网络2的计算机1的架构。计算机1的数据处理组件通过总线4,如PCI(个人计算机接口)总线,相互连接以及与NIC相连接。
计算机运行操作系统10,该操作系统能够支持同样运行于该计算机的应用程序11。计算机存储有指令库12,该库对应用程序可用。库中用于与NIC3通信的部分称作传输库13。操作系统内核包括驱动组件14:一个允许与NIC进行的数据传送及控制面操作的专用指令集。
为了实现在网络上向计算机或从计算机传送数据,需要许多的网络特定的处理及数据资源。所需的资源依赖于所使用的网络协议,但这些资源可以包括一个或多个定时器(用于识别网络协议超时)及数据队列(用于在计算机及NIC间传送网络数据及指令)。这些资源通常由NIC的专用元件提供。
当应用程序想要建立网络连接时,其调用库12中的建立子程序。内核驱动程序接到指示,通知NIC分配一组资源供应用程序使用。支持网络连接的该组资源的构成是系统设计者所熟知的。因此,可被请求的资源组的构成是固定的以允许应用程序通过对库的单次调用建立连接:它包括足以支持所需要的网络连接的一定数量的各种类别的定时器和一定数量的各种类别的队列。
总线4上的地址空间通常以一定大小的页为单位:每页一般为4或8KB。为每个资源组分配一页,每个资源都在该页中具有各自的地址。
这类设置存在诸多问题。首先,如果应用程序需要附加资源,如为了支持多处理器线程,则其需要请求另一完整的资源组,该资源组将占据另一页总线地址空间。可是由于该附加线程可能不需要全部资源组,因此这样可能会造成浪费。例如,附加的线程可能不需要如定时器这样的资源。
其次,资源一经分配,即使对于分配给单一线程且继而就空闲了的情况,也只能等到其所属的整个组均释放后才能释放。这意味着NIC必须具有比必要资源容量更多的资源容量。
再次,难以、甚至不可能将资源自一个应用程序或线程重新分配至另一个应用程序或线程。然而这在如一个线程想要将对一组存储器缓冲器的所有权转移至另一个线程的情况下可能是必需的。
需要一种系统以解决这些问题中的一个或多个。
根据本发明的一个方面,提供了一种用于在网络和数据处理设备间提供接口的网络接口设备,该网络接口设备具有:多个不同类型的资源,用于支持接口,以及一个总线接口,用于与数据处理设备依靠一种通过对总线上的地址进行寻址在总线上发送数据的总线进行接口,将该网络接口设备设置为可以通过总线上各自的地址对每个资源进行寻址。
网络接口设备可以包括一个存储有映射数据的数据存储器,映射数据为每个资源在总线上定义的各自的地址以实现对其的寻址。优选的,当网络接口设备提供至少所述接口中的一种时,能改变映射数据。优选的,当网络接口设备提供资源所支持的接口时,能改变映射数据以改变总线上可通过其资源寻址的地址。优选的,数据存储器保存了所有权数据,该所有权数据为每个资源定义了允许对各资源的状态作出修改的一个或多个实体。如果该设备支持内存映射协议,则数据存储器还可以存储每个资源所关联的映射的指示。优选的,当网络接口装置提供资源所支持的接口时,可以改变所有权数据。可以设置该装置以令其限制未被所有权数据定义为允许对各资源的状态进行修改的实体修改各资源的状态。资源的状态可以包括设备的运行设置或配置(包括资源所使用的指针)及/或(如可用,例如资源有效)资源的运行状态(例如,将由设备处理的缓冲或业务数据,或定时器的逆序记数值)。
优选的,将总线接口设置为将设备从总线上接收到的并送至映射数据所定义的作为一个资源的地址的数据送至那个资源。
优选的,资源的类型包括两个或两个以上的定时器、用于支持将数据队列从网络设备送至数据处理设备的资源,以及用于支持将数据队列从数据处理设备送至网络设备的资源。这样,每个资源均可以,例如,是支持定时器或队列的设备。这样的队列可以是缓冲器或DMA队列。
根据本发明的第二个方面,提供了一种网络设备以及一种链接于总线的,用于与数据处理设备相通信的数据处理设备,其中数据处理设备设置为将总线上的地址以页块(page blocks)为单位进行分配并且在单一页内可对多个资源单独寻址。
优选的,每页的大小可为4KB或更大。优选的,可在总线的至少一个页块内对多资源进行寻址。
根据本发明的第三个方面,提供了一种用于控制数据处理设备通过总线与网络设备进行通信的程序,该程序被设置为:接收总线上的资源的分配请求;对应该请求,识别总线上已经分配给网络设备的页块并识别该页内将被分配给该资源的但尚未分配的地址;以及将指示资源的分配的并包括识别出的地址的消息传送至网络设备。
根据本发明的第四个方面,提供了一种用于在网络和数据处理设备的进程间提供接口的网络接口设备,该数据处理设备能够支持多个进程,每个进程都具有标识代码,该网络接口设备具有:用于支持接口的多个不同类型的资源,可将每个资源分配给这些进程中的一个,以及保存有为每个资源定义了为其分配的进程的标识代码的映射数据的数据存储器。
该网络接口可以具有资源安全装置,该资源安全装置被设置为阻止分配给每个资源的进程之外的进程对各资源的状态进行修改。
优选的,该资源安全装置被设置为阻止分配给每个资源的进程之外的进程对各资源的状态进行修改。
优选的,将资源安全装置设置为支持虚拟内存机制,通过虚拟内存机制可将数据处理设备的内存空间映射至另一个数据处理设备的内存空间上。资源安全装置可以包括数据处理器,该数据处理器通过访问数据存储器来处理网络接口设备接收到的用以修改资源状态的并包括由机制决定的内存映射的标识的请求,以此识别资源是否与映射相关联,如不相关联则阻止该请求。由数据处理设备上的硬件或软件来管理虚拟内存机制的运行均可。
优选的,当网络接口设备提供至少一种所述接口时,可以改变映射数据,这样可以改变总线上用以对资源进行寻址的地址。
根据本发明的第五个方面,提供了一种用于在网络和数据处理设备间提供接口的网络接口设备,网络接口设备具有:用以支持接口的多个不同类型的资源,每种类型的资源的每一个均能够与同类型的其他资源进行数据传输,以及一个保存有映射数据的数据存储器,映射数据定义了允许相互通信的一个或多个包括不同种类资源的资源对。优选的,当网络接口设备提供至少一种所述接口时,可以改变映射数据。优选的,网络接口具有资源安全装置,该资源安全装置设置为阻止没有为其保存定义了与另一资源的配对情况的映射数据的资源修改另一资源的状态的。优选的,网络接口具有资源安全装置,资源安全装置设置为阻止没有为其保存定义了与另一资源的配对情况的映射数据的资源以外的资源修改另一资源的状态。现在,将参照附图并仅以示例的形式对本发明做出描述。
附图中:
图1示出了一种连入网络的系统的架构;
图2示出了另一种连入网络的系统的架构;
图3示出了总线映射表
图2示出了一种计算机设备20,其耦接于网络接口设备30以与网络40相连接。该计算机可以是个人计算机或服务器,也可以是渴望获得网络连通性的非可重复配置处理设备。网络接口设备可以任何适当形式存在,例如,可以是独立设备,可以是以外围卡的形式存在的或集成于计算机主板的网络接口卡。仅为了方便起见,将以PC指代计算机设备、NIC指代网络接口设备。网络可以是以太网或其他类型的网络。
计算机运行一种操作系统21,该操作系统能够支持同样运行于计算机上的应用程序22。计算机存储有指令库23,该指令库对应用程序可用。库中可用于与NIC30通信的部分定义为传送库24。操作系统内核包括驱动程序组件25:允许与NIC进行数据传送的指令集。每个应用程序都可以软件程序的形式运行于计算机上,但也可以是嵌入的固件。一些操作系统除基本操作系统代码外还包括应用程序。
本系统中未说明的方面可以是如WO2004/025477中所陈述的那样。
NIC可支持多种类型的资源:即具有不同种类功能的资源。这样的例子包括DMA队列,事件队列,定时器及支持WO2004/025477中所描述的那种类型的远程孔穴的资源。每种类型的资源(31-34)均由专用的硬件资源池提供,该硬件资源池可支持每种类型资源的多个范例。为了运行范例,必须如下文所详述的那样,通过自PC的指令对其进行配置。
NIC通过总线50与PC进行通信。在此例中,总线为PCI总线,但本发明并不局限于该种总线。在PCI总线上传输的数据都关联有目的地址,并由连接于总线的并被分配了相应目的地址的实体接收数据。在一种典型的PC实现中,地址被分配于4或8KB大小的页中。可将这些页中的一个或多个分配给NIC。块51和52代表PCI总线上已分配的页。
NIC具有总线接口控制器35,资源配置单元36和总线映射表37。资源配置单元处理从计算机接收的,提供了对NIC上的资源进行分配、重新分配(re-allocation)及释放(de-allocation)的指令的通信,并依据这些指令配置资源。驱动程序25存储了NIC上资源的分配记录。当要对资源进行分配时,驱动程序对NIC上合适的所需类型的闲置资源进行识别并向NIC传送分配指令。该指令对资源进行识别并指定如何对资源进行分配,包括资源的内部配置(如定时器运行的时间长短)。将这指令送入资源配置单元。资源配置单元继而将指定的配置载入已识别的资源。指令还包括所有权字符串,所有权字符串可以是计算机上的那些正在由应用程序或线程使用的资源的标识。资源配置单元将这些保存于总线映射表的一行中。图3示出了总线映射表中条目的一种示例,此例将在下文中详述。当需要重新分配资源时,就根据需要改变位于资源的自身配置存储器中的及总线映射表中的相关条目。当需要释放资源时,就禁用该资源并在总线映射表中上删除相关行。
针对向现在将描述系统是如何运行以向网络传送或从网络传送数据的。
在系统建立期间就已经将总线50上的一个或多个页(51,52)分配于NIC。内核驱动程序25可使用地址空间的一部分(页51)以向NIC发送指令。其他页(如页52)可用于应用程序,如应用程序22与资源(31-34)间的通信。由资源分配单元36存储分配给NIC以供资源使用的页的记录。
当应用程序22想要在网络上开启数据连接时,其在传输库中调用子程序以使连接所需的NIC资源得到分配。标准类型的网络需要标准资源集;例如:事件队列,TX与RX DMA信道,以及可DMA内存缓冲器集。例如,一个典型的集包括1TX及RXDMA 2定时器及定序100DMA内存缓冲器。
传输库中包含一个或多子程序,该一个或多个子程序可被应用程序直接调用,并用以使包括有不同类型的资源集的集号的标准资源集得到分配。传输库还包括允许每种类型的子程序得到分配、重新分配或释放的子程序。这两种类型的指令的出现意味着可以有效地建立标准连接,并可以逐资源地创建非标准资源组以及重新配置现存的连接。
用于分配资源的子程序使内核驱动程序25将指令传送给NIC,用以按子程序中指定的那样对资源进行分配。这些指令指定了与资源相关联的应用程序或线程的标识,以及资源的种类。由NIC的资源配置单元36处理这些指令。可换由内核驱动程序25提供资源分配单元的部分或全部功能。
本系统的一个突出特征在于总线50上分配给NIC的空间可在总线50上的资源间动态分割。一旦已经将一个或多个页52分配给NIC供资源使用,可为这些资源在该页中分配一个或多个单独的子页地址,对应如53、54所示的位置。这样,每个资源均可具有为其分配的总空间的部分。为哪个资源分配了总空间的哪个部分的记录存储于总线映射表37中。其效果在于,可将总线的一页用于与计算机20上的多种类型的资源及/或与多种连接相关的资源及/或与多个应用程序或线程相关联的资源的通信。并因此可相对有效地利用总线空间。
对经分配的总线空间52的使用由驱动程序25管理。当要对资源进行分配时,RAU利用一个由驱动程序25管理其内容的数据存储器识别总线上的空间内已分配给NIC的资源使用的但尚未使用的块,空间的大小为资源所需要的大小。驱动程序25进而在数据存储器中存储资源的标识(“资源”ID)、已分配的空间中的块地址(“子页”ID),以及将要使用资源的应用程序或线程的标识(“线程标签”);并向资源分配单元(RAU)发送消息,以使其在总线映射表37(如图3所示)中存储相应数据。如果RAU发现表37指示地址马上将被占据,则其向驱动程序报告一个错误代码。如果无法推断分配给资源使用的页仅有一页,则可能需要在子页地址后附加子页所在页的地址。如果分配给资源使用的总空间不足,则内核驱动程序就为其分配更多的空间。完成对资源的分配后,RAU向内核驱动程序报告成功消息。分配的页及子页地址则被报告并映射至请求该资源的应用程序,以使应用程序可通过该数据对他们进行访问。
已分配了资源的应用程序可通过向相关总线页发送数据(例如通过虚拟内存映射载入/存储循环),在与各资源相对应的子页地址上对各资源进行访问。任何发送至已分配给了资源的页的数据均由总线接口控制器35从总线50上拿掉。总线接口控制器35通过执行在表37中的查找将所述数据引入资源31-34中适当的一个,并由此识别分配了子页地址的资源的标识。应用程序还可以总线写入以外的方法对资源进行访问:例如,直接内存访问(DMA)。在这些例子中,由NIC校验发出访问请求的应用程序/线程的标识与表37中所指示的资源的标识是否相匹配。如不匹配,则忽略该数据。如匹配,则将该数据送至相应资源。这样做增加了安全性并有助于防止由其他应用程序引起的资源崩溃。
可以认为分配给一个应用程序或线程的资源集组成了一个虚拟网络接口(VNIC)。
一旦组成了虚拟接口,就可动态的对其进行重新配置。可作出的动作的示例如下:
1.可以释放不再需要的资源。为实现这一点,正在使用该资源的应用程序从传输库23中调用一个释放子程序。释放子程序调用内核驱动程序25,由内核驱动程序25指示RAU,通过对该资源禁用、在表37中清除其状态并删除其所在行,来释放该资源。
2.可为VNIC(等)增加额外资源。该过程与上述用于最初组成VNIC的过程相似。
3.可将资源由一个应用程序或进程送至另一个应用程序或进程。这在一个应用程序具有多个线程并想要将资源由一个线程送至另一线程的情况下最有用。例如,想要由一个新线程来接收并处理来自网络的数据。要实现这一点,正在使用资源的应用程序从传输库23中调用一个重新分配子程序。重新分配子程序调用内核驱动程序25,由内核驱动程序25指示RAU重新分配资源,修改表37中该资源对应的行以指定接管其控制权的应用程序或线程的标识。
在某些情况下,可能需要一种类型的资源与另一种类型的资源进行通信。例如,可能要将从网络40接收到的数据送至应用程序22进行处理。该应用程序在与总线50相连接的内存27中具有队列26。该队列由传输库23部分的管理,传输库为一个位于NIC上的DMA队列资源提供了最新的指向队列上的下一个可用位置的指针。指针在应用程序从队列26中读出数据时得到更新。从网络接收到的数据将送入事件队列资源32,事件队列资源将其写入由指针指示的位置并触发一个事件,如计算机设备20上的中断,以指示队列上的该数据可用。为了令此发生,事件队列资源32必须从DMA队列资源31中获悉指针的详情。这需要将数据从DMA队列资源送入事件队列资源。
为实现这一点,可更加常规的将表37的“线程标签”栏作为所有权标签对待,并将DMA队列与相关的事件队列相链接。为实现这一点,可将事件队列的所有权标签设置为相关DMA队列的标识。当DMA队列需要向相关事件队列传送数据时,其可通过在所有权标签栏中执行对其自身标识的查找而从表37中识别出该事件队列。
可由总线控制器25校验需要从一个资源送至另一个资源的数据以保证其与表37中的设置相符。具体地讲,当需要将数据从一个资源发送至另一个资源时,总线控制器可对表37中是否存在这样的行进行校验:即在所有权标签字段中具有作为数据源的资源的标识、且在资源ID字段中具有作为数据所指的预期目的地的资源的标识。如果不匹配,则阻止数据到达目的地。这提供了额外的安全性及抗崩溃保护。可选的,或进一步的,如果一个资源与另一个资源具有共同的物主,则可允许其中一个向另一个传送数据:在本例中,如果两者的资源ID字段指明它们由相同的线程、应用程序或其他资源所拥有。
还可通过传输库中的重新配置子程序动态的重新配置以这种方式链接的资源标识。
网络可以是以太网或其他类型的网络。网络上使用的协议客户可以包括但不局限于TCP/IP。
申请人分别披露了所述每个单独的特点和两个或多个这些特点的组合,在这种意义上,不管这些特点或组合是否解决这里所披露的所有问题,不限制权利要求的范围,按照本领域技术人员的通常的整体知识,基于本说明能够实现这些特点和组合。申请人指出本发明可以包括这些单独的特点或者这些特点的组合。由于前面的描述,这是显然的对于本领域技术人员在本发明的范围内可作出各种修改。

Claims (24)

1.一种用于在网络和数据处理设备间提供接口的网络接口设备,该网络接口设备具有:多个不同类型的资源,用于支持接口,以及一个总线接口,用于与数据处理设备依靠一种通过对总线上的地址进行寻址在总线上发送数据的总线进行接口,将该网络接口设备设置为可以通过总线上各自的地址对每个资源进行寻址。
2.根据权利要求1所述的网络接口设备,包括一个存储有映射数据的数据存储器,映射数据为每个资源在总线上定义的各自的地址以实现对其的寻址。
3.根据权利要求2所述的网络接口设备,其中,当网络接口设备提供至少所述接口中的一种时,能改变映射数据。
4.根据权利要求3所述的网络接口设备,其中,当网络接口设备提供资源所支持的接口时,能改变映射数据以改变总线上可通过其资源寻址的地址。
5.根据权利要求2至4中任意一项所述的网络接口设备,其中,数据存储器保存了所有权数据,该所有权数据为每个资源定义了允许对各资源的状态作出修改的一个或多个实体。
6.根据权利要求5所述的网络接口设备,其中,当网络接口装置提供资源所支持的接口时,可以改变所有权数据。
7.根据权利要求5或6所述的网络接口设备,其中,设置该装置以令其限制未被所有权数据定义为允许对各资源的状态进行修改的实体修改各资源的状态。
8.根据权利要求2至7中任意一项所述的网络接口设备,其中,将总线接口设置为将设备从总线上接收到的并送至映射数据所定义的作为一个资源的地址的数据送至那个资源。
9.根据前述权利要求中任意一项所述的网络接口设备,其中,资源的类型包括两个或两个以上的定时器、用于支持将数据队列从网络设备送至数据处理设备的资源,以及用于支持将数据队列从数据处理设备送至网络设备的资源。
10.根据前述权利要求中任意一项所述的网络接口设备以及一种网络设备以及一种链接于总线的,用于与数据处理设备相通信的数据处理设备,其中,数据处理设备设置为将总线上的地址以页块为单位进行分配并且在单一页内可对多个资源单独寻址。
11.根据权利要求10中所述的网络设备及数据处理设备,其中,每页的大小为4KB或更大。
12.根据权利要求11中所述的网络设备及数据处理设备,其中,可在总线的至少一个页块内对多资源进行寻址。
13.一种用于控制数据处理设备通过总线与网络设备进行通信的程序,该程序被设置为:接收总线上的资源的分配请求;对应该请求,识别总线上已经分配给网络设备的页块并识别该页内将被分配给该资源的但尚未分配的地址;以及将指示资源的分配的并包括识别出的地址的消息传送至网络设备。
14.一种用于在网络和数据处理设备的进程间提供接口的网络接口设备,该数据处理设备能够支持多个进程,每个进程都具有标识代码,该网络接口设备具有:用于支持接口的多个不同类型的资源,可将每个资源分配给这些进程中的一个,以及保存有为每个资源定义了为其分配的进程的标识代码的映射数据的数据存储器。
15.根据权利要求14中所述的网络设备,其中,网络接口具有资源安全装置,该资源安全装置被设置为阻止分配给每个资源的进程之外的进程对各资源的状态进行修改。
16.根据权利要求15中所述的网络设备,其中,资源安全装置被设置为阻止分配给每个资源的进程之外的进程对各资源的状态进行修改。
17.根据权利要求16中所述的网络设备,其中,将资源安全装置设置为支持虚拟内存机制,通过虚拟内存机制可将数据处理设备的内存空间映射至另一个数据处理设备的内存空间上,资源安全装置可以包括数据处理器,该数据处理器通过访问数据存储器来处理网络接口设备接收到的用以修改资源状态的并包括由机制决定的内存映射的标识的请求,以此识别资源是否与映射相关联,如不相关联则阻止该请求。
18.根据权利要求14至17中任意一项所述的网络设备,其中,资源的类型包括两个或两个以上的定时器、用于支持将数据队列从网络设备送至数据处理设备的资源,以及用于支持将数据队列从数据处理设备送至网络设备的资源。
19.根据权利要求14至18中任意一项所述的网络设备,其中,当网络接口设备提供至少一种所述接口时,可以改变映射数据,这样可以改变总线上用以对资源进行寻址的地址。
20.一种用于在网络和数据处理设备间提供接口的网络接口设备,网络接口设备具有:用以支持接口的多个不同类型的资源,每种类型的资源的每一个均能够与同类型的其他资源进行数据传输,以及一个保存有映射数据的数据存储器,映射数据定义了允许相互通信的一个或多个包括不同种类资源的资源对。
21.根据权利要求20中所述的网络接口设备,其中,当网络接口设备提供至少一种所述接口时,可以改变映射数据。
22.根据权利要求21中所述的网络接口设备,其中,网络接口具有资源安全装置,该资源安全装置设置为阻止没有为其保存定义了与另一资源的配对情况的映射数据的资源修改另一资源的状态。
23.根据权利要求22中所述的网络接口设备,其中,网络接口具有资源安全装置,资源安全装置设置为阻止没有为其保存定义了与另一资源的配对情况的映射数据的资源以外的资源修改另一资源的状态。
24.根据权利要求20至23中任意一项所述的网络接口设备,其中,资源的类型包括两个或两个以上的定时器、用于支持将数据队列从网络设备送至数据处理设备的资源,以及用于支持将数据队列从数据处理设备送至网络设备的资源。
CN2005800353591A 2004-09-09 2005-09-02 动态资源分配 Active CN101048767B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB0420057.2A GB0420057D0 (en) 2004-09-09 2004-09-09 Dynamic resource allocation
GB0420057.2 2004-09-09
PCT/IB2005/002639 WO2006027663A1 (en) 2004-09-09 2005-09-02 Dynamic resource allocation

Publications (2)

Publication Number Publication Date
CN101048767A true CN101048767A (zh) 2007-10-03
CN101048767B CN101048767B (zh) 2011-04-20

Family

ID=33186754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800353591A Active CN101048767B (zh) 2004-09-09 2005-09-02 动态资源分配

Country Status (7)

Country Link
US (1) US8219712B2 (zh)
EP (3) EP1787207B1 (zh)
CN (1) CN101048767B (zh)
AT (1) ATE450832T1 (zh)
DE (1) DE602005018074D1 (zh)
GB (1) GB0420057D0 (zh)
WO (1) WO2006027663A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103890714A (zh) * 2011-08-25 2014-06-25 维图斯瑞姆有限公司 涉及基于集群的资源池的主机感知资源管理的系统和方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683000B1 (en) * 2006-10-27 2014-03-25 Hewlett-Packard Development Company, L.P. Virtual network interface system with memory management
US9027017B2 (en) 2010-02-22 2015-05-05 Virtustream, Inc. Methods and apparatus for movement of virtual resources within a data center environment
US8473959B2 (en) 2010-02-22 2013-06-25 Virtustream, Inc. Methods and apparatus related to migration of customer resources to virtual resources within a data center environment
US9122538B2 (en) 2010-02-22 2015-09-01 Virtustream, Inc. Methods and apparatus related to management of unit-based virtual resources within a data center environment
US8635414B2 (en) * 2011-06-24 2014-01-21 Nxp B.V. System and method for allocating memory resources
JP5692381B2 (ja) * 2011-07-13 2015-04-01 富士通株式会社 マルチコアプロセッサシステム、および制御方法
FR3003054B1 (fr) * 2013-03-06 2016-08-19 Sagem Defense Securite Procede et dispositif de filtrage de transactions pour systeme sur puce
US9323544B2 (en) 2013-10-09 2016-04-26 International Business Machines Corporation Dynamic reconfiguration of queue pairs
US20150248443A1 (en) 2014-03-02 2015-09-03 Plexistor Ltd. Hierarchical host-based storage
DE102014215061A1 (de) 2014-07-31 2016-02-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Mikromechanische Komponente und Verfahren zu ihrer Herstellung
US10331616B2 (en) * 2015-08-05 2019-06-25 Futurewei Technologies, Inc. Integration of network linecard (LC) to host operating system (OS)
US11409569B2 (en) 2018-03-29 2022-08-09 Xilinx, Inc. Data processing system

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4574350A (en) * 1982-05-19 1986-03-04 At&T Bell Laboratories Shared resource locking apparatus
US5452455A (en) * 1992-06-15 1995-09-19 International Business Machines Corporation Asynchronous command support for shared channels for a computer complex having multiple operating systems
EP0610677A3 (en) * 1993-02-12 1995-08-02 Ibm Communication device management module operating in two modes.
US5606668A (en) 1993-12-15 1997-02-25 Checkpoint Software Technologies Ltd. System for securing inbound and outbound data packet flow in a computer network
US5802320A (en) 1995-05-18 1998-09-01 Sun Microsystems, Inc. System for packet filtering of data packets at a computer network interface
US6070219A (en) * 1996-10-09 2000-05-30 Intel Corporation Hierarchical interrupt structure for event notification on multi-virtual circuit network interface controller
US5987557A (en) 1997-06-19 1999-11-16 Sun Microsystems, Inc. Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU)
US7284070B2 (en) * 1997-10-14 2007-10-16 Alacritech, Inc. TCP offload network interface device
US6988274B2 (en) * 1998-06-12 2006-01-17 Microsoft Corporation Method, system, and computer program product for representing and connecting an underlying connection-oriented device in a known format
DE60009884T2 (de) 1999-03-01 2005-04-07 Sun Microsystems, Inc., Palo Alto Verfahren und vorrichtung zur identifizierung und klassifizierung von netzwerkverkehr in einer hochleistungs netzwerkschnittstelle
US6675200B1 (en) * 2000-05-10 2004-01-06 Cisco Technology, Inc. Protocol-independent support of remote DMA
US6892259B2 (en) * 2001-09-29 2005-05-10 Hewlett-Packard Development Company, L.P. Method and apparatus for allocating computer bus device resources to a priority requester and retrying requests from non-priority requesters
US7392376B2 (en) 2002-12-30 2008-06-24 International Business Machines Corporation Security module
US7719980B2 (en) 2002-02-19 2010-05-18 Broadcom Corporation Method and apparatus for flexible frame processing and classification engine
US7058780B2 (en) 2002-05-29 2006-06-06 Intel Corporation Device resource allocation
US7944920B2 (en) * 2002-06-11 2011-05-17 Pandya Ashish A Data processing system using internet protocols and RDMA
WO2004017220A1 (en) 2002-08-19 2004-02-26 Broadcom Corporation One-shot rdma
GB0221464D0 (en) * 2002-09-16 2002-10-23 Cambridge Internetworking Ltd Network interface and protocol
US20040128382A1 (en) * 2002-12-31 2004-07-01 Marion Shimoda Method and apparatus for adjusting resource availability based on power availability
US20050021558A1 (en) * 2003-06-11 2005-01-27 Beverly Harlan T. Network protocol off-load engine memory management
US7243167B2 (en) * 2003-09-19 2007-07-10 Intel Corporation Managing peripheral device address space resources using a tunable bin-packing/knapsack algorithm

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103890714A (zh) * 2011-08-25 2014-06-25 维图斯瑞姆有限公司 涉及基于集群的资源池的主机感知资源管理的系统和方法
CN103890714B (zh) * 2011-08-25 2017-10-24 维图斯瑞姆Ip控股公司 涉及基于集群的资源池的主机感知资源管理的系统和方法

Also Published As

Publication number Publication date
EP2040176B1 (en) 2012-10-10
EP2040176A1 (en) 2009-03-25
EP1787207B1 (en) 2009-12-02
WO2006027663A1 (en) 2006-03-16
DE602005018074D1 (de) 2010-01-14
ATE450832T1 (de) 2009-12-15
EP1787207A1 (en) 2007-05-23
US20080189510A1 (en) 2008-08-07
GB0420057D0 (en) 2004-10-13
CN101048767B (zh) 2011-04-20
EP2040177A1 (en) 2009-03-25
US8219712B2 (en) 2012-07-10

Similar Documents

Publication Publication Date Title
CN101048767B (zh) 动态资源分配
US7356655B2 (en) Methods, systems, and media for managing dynamic storage
CA2697155C (en) Allocating network adapter resources among logical partitions
US8307053B1 (en) Partitioned packet processing in a multiprocessor environment
US20150026213A1 (en) System and method for providing a shareable global cache for use with a database environment
CN1285935A (zh) 一种使用自动下载的自动配置的方法和系统
US7440998B2 (en) Provisioning for a modular server
CN1171153C (zh) 管理服务器和客户机间的连接的系统和方法
US20160085589A1 (en) Method And Apparatus For Providing Isolated Virtual Space
CN1315076C (zh) 管理备用资源权利的设备和方法
CN1286426A (zh) 使用远程java对象分配程序的方法
CN100345081C (zh) 用于在多分区数据处理系统中管理操作系统的方法和数据处理系统
CN1928873A (zh) 一种实现负荷分担的数据库访问方法及系统
CN1786928A (zh) 应用层高速缓存映像知晓和再分配的系统和方法
JP2002169694A (ja) ネットワーク上のpxeクライアントにdhcpサーバを介してブート・サーバを自動的に割り当てる方法とシステム
CN1514977A (zh) 根据共享属性而由压缩的队列对来建立多重虚拟队列对的配置
CN1728118A (zh) 资源分配管理
IL166169A (en) Versioning support in object-oriented programming languages and tools
CN102667714B (zh) 支持访问由操作系统环境外的资源提供的功能的方法和系统
CN1759378A (zh) 用于在经过逻辑分区的计算机系统中控制资源转移的装置和方法
CN1959676A (zh) 用于在计算机数据库系统中物化查询表日志的装置和方法
CN1912833A (zh) 一种嵌入式操作系统驱动程序动态升级方法
US7447829B2 (en) Heap and stack layout for multithreaded processes in a processing system
US6347364B1 (en) Schedulable dynamic memory pinning
CN1664791A (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090306

Address after: American California

Applicant after: Solarflare Communications Inc.

Address before: American California

Applicant before: Level 5 Networks Inc.

ASS Succession or assignment of patent right

Owner name: SOLFUREIL COMMUNICATION CO., LTD.

Free format text: FORMER OWNER: LEVEL5 NETWORKS

Effective date: 20090306

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP02 Change in the address of a patent holder

Address after: Room 7505, 100 Erwin Central Road, Erwin, California

Patentee after: Solarflare Communications Inc.

Address before: American California

Patentee before: Solarflare Communications Inc.

TR01 Transfer of patent right

Effective date of registration: 20191217

Address after: California, USA

Patentee after: XILINX INC

Address before: Room 7505, 100 Erwin Central Road, Erwin, California

Patentee before: Solarflare Communications Inc.

TR01 Transfer of patent right