IP Library Granted Patent US 8,756,607
Granted Patent B2
US 8,756,607 · App. 11/504,190 · Granted Jun 17, 2014

Method and system for creating and utilizing virtual hardware resources

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,756,607
App. No.
11/504,190
Granted
Jun 17, 2014
Kind
B2
Abstract

A data-processing method and system generally comprises identifying a plurality of hardware resources associated with a data-processing apparatus, time-slicing the plurality of hardware resources. Thereafter the plurality of active hardware resources can be allocated among a plurality of active hardware resources associated with the data-processing apparatus, thereby allowing a limited number of hardware resources to service a larger number of physical devices associated with the data-processing apparatus. An appropriate hardware resource can be selected from among the plurality of active hardware resources utilizing one or more swapping algorithms.

Claims (37)

1. A data-processing method comprising:

arranging a plurality of I/O devices in a sequential order;

identifying a plurality of hardware resources associated with a data-processing apparatus;

time-slicing said plurality of hardware resources by executing a program instruction utilizing a computer;

allocating said plurality of active hardware resources among a plurality of active hardware device indices associated with said data-processing apparatus; and

freeing said hardware device indices when said associated active hardware resource is allocated to one of a plurality of drives associated with or in communication with said data-processing apparatus, thereby allowing a limited number of hardware resources to service a larger number of physical devices associated with said data-processing apparatus by executing a program instruction utilizing a computer.

2. The method of claim 1 further comprising selecting an appropriate hardware resource from among said plurality of active hardware resources utilizing at least one swapping algorithm by executing a program instruction utilizing a computer.

3. The method of claim 1 further comprising a pool of free hardware device indices that are available to other data-processing components.

4. The method of claim 3 wherein that at least one free hardware resource among a pool of free hardware resources is allocated and assigned to one of said drives associated with or in communication with said data-processing apparatus.

5. The method of claim 4 wherein a firmware detects at least one input to said drive.

6. The method of claim 1 wherein at least one hardware resource among said plurality of hardware resources comprises a host bus adapter component.

7. The method of claim 6 wherein said host bus adapter component comprises a serial attached SCSI host bus adapter (HBA).

8. A data-processing system comprising:

a data-processing apparatus;

a module executed by said data-processing apparatus, said module and said data-processing apparatus being operable in combination with one another to:

arrange a plurality of I/O devices in a sequential order;

identify a plurality of hardware resources associated with a data-processing apparatus;

time-slice said plurality of hardware resources;

allocate said plurality of active hardware resources among a plurality of active hardware device indices associated with said data-processing apparatus; and

freeing said hardware device indices when said associated active hardware resource is allocated to one of a plurality of drives associated with or in communication with said data-processing apparatus, thereby allowing a limited number of hardware resources to service a larger number of physical devices associated with said data-processing apparatus.

9. The system of claim 8 wherein said data-processing apparatus and said module are further operable in combination with one another to select an appropriate hardware resource from among said plurality of active hardware resources utilizing at least one swapping algorithm.

10. The system of claim 8 further comprising a pool of free hardware device indices that are available to other data-processing components.

11. The system of claim 10 wherein that at least one free hardware resource among a pool of free hardware resources is allocated and assigned one of said drives associated with or in communication with said data-processing apparatus.

12. The system of claim 11 wherein a firmware detects at least one input to said drive.

13. The system of claim 8 wherein at least one hardware resource among said plurality of hardware resources comprises a host bus adapter component.

14. The system of claim 13 wherein said host bus adapter component comprises a serial attached SCSI host bus adapter (HBA).

15. One or more processor readable storage devices having a processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:

arranging a plurality of I/O devices in a sequential order;

identifying a plurality of hardware resources associated with a data-processing apparatus;

time-slicing said plurality of hardware resources;

allocating said plurality of active hardware resources among a plurality of active hardware device indices associated with said data-processing apparatus; and

freeing said hardware device indices when said associated active hardware resource is allocated to one of a plurality of drives associated with or in communication with said data-processing apparatus, thereby allowing a limited number of hardware resources to service a larger number of physical devices associated with said data-processing apparatus.

16. The processor readable code of claim 15 further comprising selecting an appropriate hardware resource from among said plurality of active hardware resources utilizing at least one swapping algorithm.

17. The processor readable code of claim 15 further comprising a pool of free hardware device indices that are available to other data-processing components.

18. The processor readable code of claim 17 wherein that at least one free hardware resource among a pool of free hardware resources is allocated and assigned to one of said drives associated with or in communication with said data-processing apparatus.

19. The processor readable code of claim 18 wherein a firmware detects at least one input to said drive.

20. The processor readable code of claim 15 wherein at least one hardware resource among said plurality of hardware resources comprises a host bus adapter component.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER IN THE INCORRECT US PATENT NO. 8,876,094 PREVIOUSLY RECORDED ON REEL 047351 FRAME 0384. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 049248/0558 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE MERGER PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0910. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047351/0384 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0910 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
CHANGE OF NAME Recorded Jun 6, 2014
From: LSI LOGIC CORPORATION
To: LSI CORPORATION
Reel/Frame 033102/0270 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2006
From: WANG, MING-JEN; JOHNSON, STEPHEN; PARRY, OWEN; BESMER, BRAD
To: LSI LOGIC CORPORATION
Reel/Frame 018202/0572 →