IP Library Granted Patent US 7,743,072
Granted Patent B2
US 7,743,072 · App. 11/495,215 · Granted Jun 22, 2010

Database for storing device handle data in an extensible firmware interface environment

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 7,743,072
App. No.
11/495,215
Granted
Jun 22, 2010
Kind
B2
Abstract

Methods, apparatus, and computer-readable media for providing a device handle database in an EFI environment are disclosed. According to one method, a device handle database is created for storing data identifying the protocols that have been installed on one or more device handles. The database includes a sorted array of elements utilized to store protocol data for a family of protocols having the same GUID. Each element in the array comprises a family data structure including a field for storing the GUID for the family along with a field for storing a pointer to a linked list that stores the protocol instance data for each of the protocols in the family. Each node in the linked list is also a member of a linked list for storing protocol data for all of the protocols installed on a given device handle.

Claims (15)

1. A method for creating a device handle database in an extensible firmware interface environment, the method comprising:

creating a device handle database for storing data identifying the device handles upon which one or more protocols have been installed, the device handle database comprising an array of elements, each element in the array of elements operative to store protocol data for a family of protocols having an identical globally unique identifier (GUID), wherein each element in the array comprises a family data structure including a field for storing the GUID for the family, and a field for storing a pointer to a linked list for storing the protocol data for each of the protocols in the family, and wherein the linked list comprises one or more nodes, each node corresponding to a protocol in the family and having a field for storing a pointer to a protocol interface for the protocol and a field for storing a pointer to the family data structure for the linked list of protocols identified by the GUID.

2. The method of claim 1 , wherein each node further comprises a field for storing a pointer to a device handle data structure identifying the device handle upon which the protocol is installed.

3. The method of claim 2 , wherein each node further comprises a field for storing a link to a next node in the linked list for storing the protocol data for the protocols in the family.

4. The method of claim 3 , wherein each node further comprises a field for storing a link to a next node in a linked list of nodes corresponding to protocols that have been installed on the same device handle.

5. The method of claim 4 , wherein the array of elements is sorted based upon the GUID in the family data structure.

6. A method for creating a device handle database in an extensible firmware interface environment, the method comprising:

generating a first linked list having one or more nodes, each node in the first linked list storing protocol data for a protocol having the same globally unique identifier (GUID) as other nodes in the first linked list, wherein each node in the first linked list comprises a field for storing a pointer to a family data structure, the family data structure including a field for storing the GUID and a field for storing a pointer to the first linked list; and

generating a second linked list from the nodes, each of the nodes in the second linked list storing data for a protocol installed on the same device handle as other nodes in the second linked list, wherein each of the nodes participates in a first linked list a second linked list, and wherein each node in the second linked list comprises a field for storing a pointer to a device handle data structure, the device handle data structure including a field for storing a pointer to the second linked list.

7. The method of claim 6 , wherein each node further comprises a field for storing a link to a next node in the first linked list and a field for storing a pointer to a next node in the second linked list.

8. The method of claim 7 , further comprising providing an array having one or more elements, each of the elements operative to store a family data structure, the array being sorted by the GUID stored in each family data structure.

9. A computer-readable storage medium having a data structure stored thereon, when executed by a computer causes a processor to perform a method of storing a device handle database in an extensible firmware interface environment comprising:

generating one or more first linked lists, each of the first linked lists having one or more nodes corresponding to installed protocols having an identical globally unique identifier (GUID), wherein each node in the first linked list comprises a field for storing a pointer to a family data structure, the family data structure including a field for storing the GUID and a field for storing a pointer to the first linked list; and

generating one or more second linked lists from the nodes, each of the second linked lists having one or more nodes corresponding to protocols installed on the same device handle, wherein each of the nodes participates in a first linked list and a second linked list, and wherein each node in the second linked list comprises a field for storing a pointer to a device handle data structure, the device handle data structure including a field for storing a pointer to the second linked list.

10. The computer-readable storage medium of claim 9 , wherein each of the nodes includes a field for storing a pointer to a protocol interface.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0795 →
SECURITY INTEREST Recorded May 6, 2019
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 049087/0266 →
ENTITY CONVERSION Recorded Apr 15, 2019
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 049091/0973 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2006
From: POLYUDOV, FELIKS
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 018140/0024 →