Patent ID: 8447891
Filing Date: 2013-05-21
Classification: G06F

Abstract:
1. A computer-implemented method, comprising: determining prior to a runtime a number of virtual functions that each port of a hardware input/output adapter is capable of supporting; assigning prior to the runtime a first portion of internal resources of the hardware input/output adapter to each port of the hardware input/output adapter; for a particular port of the hardware input/output adapter, assigning prior to the runtime a second portion of the internal resources to each virtual function that the particular port of the hardware input/output adapter is capable of supporting, the second portion of the internal resources a subset of the first portion of the internal resources; configuring a first virtual function prior to the runtime to use the assigned second portion of the internal resources to enable the first virtual function to be assigned during runtime; receiving a request to provide a particular virtual function, the request specifying one or more requested parameters associated with the particular virtual function; selecting during the runtime the first virtual function that was configured prior to the runtime; determining during the runtime whether parameters of the selected virtual function correspond to the requested parameters; and assigning during the runtime the selected virtual function to a client application in response to determining that the parameters of the selected virtual function correspond to the requested parameters, wherein assigning during the runtime the selected virtual function to the client application comprises associating the selected virtual function with a token that is provided by the client application.