IP Library Granted Patent US 11,487,581
Granted Patent B2
US 11,487,581 · App. 16/790,863 · Granted Nov 1, 2022

Initialization data memory space allocation system

Inventors: Wei Liu (Austin, TX); Karl W. Rasmussen (Temple, TX)
Assignee: Dell Products L.P.
G06F9/5016G06F9/4406G06F9/4411G06F12/0246
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 11,487,581
App. No.
16/790,863
Granted
Nov 1, 2022
Kind
B2
Abstract

An initialization data memory space allocation system includes a memory system having a memory space that includes an initialization data bucket that reserves a contiguous subset of the memory space for initialization data. Each initialization engine that is coupled to the memory system is configured during initialization operations to allocate, for that initialization engine, a portion of the contiguous subset of the memory space reserved by the initialization data bucket, and then store initialization data in that portion of the contiguous subset of the memory space reserved by the initialization data bucket. A runtime engine that is coupled to the memory system is configured, during runtime operations, to claim the contiguous subset of the memory space reserved for initialization data by the initialization data bucket for runtime data, and store runtime data in at least a portion of the contiguous subset of the memory space.

Claims (47)

1. An initialization data memory space allocation system, comprising:

a memory system having a memory space that includes an initialization data bucket that reserves a contiguous subset of the memory space for initialization data during initialization operations; and

a processor operating to provide:

at least one initialization engine that is coupled to the memory system, wherein each initialization engine that is included in the at least one initialization engine is configured, during the initialization operations, to:

allocate, for that initialization engine that is included in the at least one initialization engine, a portion of the contiguous subset of the memory space reserved by the initialization data bucket; and

store initialization data in that portion of the contiguous subset of the memory space reserved by the initialization data bucket; and

a runtime engine that is coupled to the memory system and that is configured, during runtime operations, to:

claim the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket for runtime data; and

store the runtime data in at least a portion of the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

2. The initialization data memory space allocation system of claim 1 , wherein the initialization data bucket that reserves the contiguous subset of the memory space for the initialization data is a boot services data bucket that reserves the contiguous subset of the memory space for boot services data.

3. The initialization data memory space allocation system of claim 1 , wherein the memory system is provided by a main memory system including Dynamic Random Access Memory (DRAM) devices.

4. The initialization data memory space allocation system of claim 1 , wherein the memory system is provided by a High Bandwidth Memory (HBM) system included with a processing system that is configured to provide the at least one initialization engine and the runtime engine.

5. The initialization data memory space allocation system of claim 1 , wherein the at least one initialization engine includes a Basic Input/Output System (BIOS) engine and at least one firmware driver engine.

6. The initialization data memory space allocation system of claim 1 , wherein the at least one initialization engine is configured to:

report, to the runtime engine, the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

7. An Information Handling System (IHS), comprising:

a processing system that includes a processor that is configured to:

define an initialization data bucket that reserves a contiguous subset of a memory space provided by a memory system for initialization data during initialization operations; and

execute instructions to cause the processing system to provide:

at least one initialization engine, wherein each initialization engine that is included in the at least one initialization engine is configured, during the initialization operations, to:

allocate, for that initialization engine that is included in the at least one initialization engine, a portion of the contiguous subset of the memory space reserved by the initialization data bucket; and

store initialization data in that portion of the contiguous subset of the memory space reserved by the initialization data bucket; and

a runtime engine that is coupled to the memory system and that is configured, during runtime operations, to:

claim the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket for runtime data; and

store the runtime data in at least a portion of the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

8. The IHS of claim 7 , wherein the initialization data bucket that reserves the contiguous subset of the memory space for the initialization data is a boot services data bucket that reserves the contiguous subset of the memory space for boot services data.

9. The IHS of claim 7 , wherein the memory system is provided by a main memory system that is coupled to the processing system and that includes Dynamic Random Access Memory (DRAM) devices.

10. The IHS of claim 7 , wherein the memory system is provided by a High Bandwidth Memory (HBM) system included with the processing system.

11. The IHS of claim 7 , wherein the at least one initialization engine includes a Basic Input/Output System (BIOS) engine and at least one firmware driver engine.

12. The IHS of claim 7 , wherein the processing system is configured to:

report, to the runtime engine, the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

13. The IHS of claim 7 , wherein the processing system is configured to:

define the initialization data bucket that reserves the contiguous subset of the memory space provided by the memory system for the initialization data such that the initialization data bucket provides an edge of the memory space provided by the memory system.

14. A method for allocating memory space for initialization data, comprising:

defining, during initialization operations by a processing system that includes a processor, an initialization data bucket that reserves a contiguous subset of a memory space provided by a memory system for initialization data;

allocating, during the initialization operations by each initialization engine included in at least one initialization engine provided by the processing system and for that initialization engine included in the at least one initialization engine, a portion of the contiguous subset of the memory space reserved by the initialization data bucket;

storing, during the initialization operations by each initialization engine included in at least one initialization engine provided by the processing system, initialization data in the portion of the contiguous subset of the memory space reserved by the initialization data bucket;

claiming, by a runtime engine provided by the processing system during runtime operations, the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket for runtime data; and

storing, by the runtime engine provided by the processing system during the runtime operations, the runtime data in at least a portion of the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

15. The method of claim 14 , wherein the initialization data bucket that reserves the contiguous subset of the memory space for the initialization data is a boot services data bucket that reserves the contiguous subset of the memory space for boot services data.

16. The method of claim 14 , wherein the memory system is provided by a main memory system that is coupled to the processing system and that includes Dynamic Random Access Memory (DRAM) devices.

17. The method of claim 14 , wherein the memory system is provided by a High Bandwidth Memory (HBM) system included with the processing system.

18. The method of claim 14 , wherein the at least one initialization engine includes at least one of a Basic Input/Output System (BIOS) engine or at least one firmware driver engine.

19. The method of claim 14 , further comprising:

reporting, by the processing system to the runtime engine, the contiguous subset of the memory space reserved for the initialization data by the initialization data bucket.

20. The method of claim 14 , further comprising:

defining, by the processing system, the initialization data bucket that reserves the contiguous subset of the memory space provided by the memory system for the initialization data such that the initialization data bucket provides an edge of the memory space provided by the memory system.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2020
From: LIU, WEI; RASMUSSEN, KARL W.
To: DELL PRODUCTS L.P.
Reel/Frame 051819/0173 →