Patent ID: 6763454
Filing Date: 2004-07-13
Classification: G06F

Abstract:
A method for allocating elements of a resource for use by devices of a computer, the method comprising the steps of:(a) obtaining a list of device configurations based on logical configuration data obtained from the devices, said logical configuration data defining resource elements for the operation of a corresponding device and each device configuration defining a requirement for one of the resource elements to support the operation of a corresponding one of the devices with the computer, the resource elements including nonreserved resource elements and reserved resource elements, the reserved resource elements representing a set of the resource elements that are held in reserve for possible use by selected devices, the nonreserved resource elements representing the remaining resource elements; (b) determining whether one of the nonreserved resource elements is available to satisfy the resource element requirement for a first one of the device configurations and whether another one of the nonreserved resource elements is available to satisfy the resource element requirement for each of the remaining device configurations; if so, then allocating the available nonreserved resource element to the first device configuration and allocating other available nonreserved resource elements to each of the remaining device configurations; otherwise, (c) determining whether one of the reserved resource elements is available to satisfy the resource element requirement for the first device configuration and whether one of the nonreserved resource elements is available to satisfy the resource element requirement for each of the remaining device configurations; if so, then allocating the available reserved resource element to the first device configuration and allocating available nonreserved resource elements to each of the remaining device configurations; otherwise, (d) determining whether one of the nonreserved resource elements is available to satisfy the resource element requirement for the first device configuration and whether either one of the nonreserved resource elements or the reserved resource elements is available to satisfy the resource element requirement for each of the remaining device configurations; if so, then allocating the available nonreserved resource element to the first device configuration and allocating the available nonreserved resource elements or reserved resource elements to each of the remaining device configurations; otherwise, (e) determining whether one of the reserved resource elements is available to satisfy the resource element requirement for the first device configuration and whether either one of the nonreserved resource elements or the reserved resource elements is available to satisfy the resource element requirement for each of the remaining device configurations; if so, then allocating the available reserved resource element to the first device configuration and the available nonreserved resource elements or reserved resource elements to each of the remaining device configurations; otherwise declaring a configuration failure.