Patent ID: 8301818

Claim:
A method for virtual hot plugging at least one of a device or a virtual device, comprising: utilizing at least one processing unit, creating a device list for an operating system executing on a computing device, the device list stored in at least one computer readable medium, the operating system operable to interact with a plurality of devices utilizing the device list; utilizing the at least one processing unit, creating a bus node in the device list for each bus connected to the computing device, each bus including a plurality of interfaces; utilizing the at least one processing unit, creating a plurality of interface nodes in the device list, each of the plurality of interface nodes corresponding to one of the plurality of interfaces, the plurality of interface nodes being child nodes of the respective bus node, each interface node including a status indication that indicates whether one of the plurality of devices is accessible by the operating system via the corresponding one of the plurality of interfaces; utilizing the at least one processing unit, creating a device node in the device list, the device node corresponding to a device of the plurality of devices that is accessible by the operating system via an interface of the plurality of interfaces, the device node being a child node of the interface node that corresponds to the interface, the device including a plurality of virtual devices; utilizing the at least one processing unit, creating a plurality of virtual interface nodes in the device list, each of the plurality of virtual interface nodes corresponding to one of the plurality of virtual devices, the plurality of virtual interface nodes being child nodes of the device node, each virtual interface node including a status indicator that indicates whether the virtual device is accessible by the operating system; and utilizing the at least one processing unit, performing at least one of adding or removing at least one of one of the plurality of devices utilizing at least the device list or one of the plurality of virtual devices utilizing at least the device list.