US9274804B2ActiveUtilityA1

Overlapped boot task fetches and boot task execution to reduce boot time in an electrical device

62
Assignee: GILLESPIE KURT DPriority: Feb 3, 2009Filed: Feb 3, 2009Granted: Mar 1, 2016
Est. expiryFeb 3, 2029(~2.6 yrs left)· nominal 20-yr term from priority
G06F 9/4401
62
PatentIndex Score
3
Cited by
22
References
15
Claims

Abstract

In accordance with at least some embodiments, a system includes a first processor and a second processor. The system also includes a boot task storage medium that can only be accessed by one processor at a time. A boot process of the system has a first stage and a second stage. During the first stage, the first processor fetches and executes boot tasks without assistance from the second processor. During the second stage, boot task execution performed by first processor overlaps with at least one boot task fetch performed by the second processor.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A system, comprising:
 a first processor; 
 a second processor configured to fetch but not to execute boot driver routines; and 
 a boot task storage medium that can only be accessed by one of the first and second processors at a time, wherein a boot process of the system has a first stage and a second stage, 
 during the first stage, the first processor fetches and executes the boot driver routines without assistance from the second processor, 
 during the second stage, boot driver routine execution performed by the first processor overlaps with at least one boot driver routine fetch performed by the second processor, wherein the overlap is enabled by execution of a multi-processor initiation driver stored by the boot task storage medium and executed by the first processor. 
 
     
     
       2. The system of  claim 1  wherein the first stage transitions to the second stage upon execution of the mufti-processor initiation driver stored by the boot task storage medium and executed by the first processor. 
     
     
       3. The system of  claim 1  wherein boot task storage medium is an Extensible Firmware Interface (EFI) Basic Input/Output System (BIOS) memory. 
     
     
       4. The system of  claim 1  wherein, during the second stage, the second processor fetches at least one driver execution environment (DXE) phase driver while the first processor executes a previously fetched DXE phase driver. 
     
     
       5. The system of  claim 1  wherein, during the second stage, the first processor executes at least one first type boot driver while the second processor fetches at least one second type boot driver. 
     
     
       6. The system of  claim 5  wherein the at least one first-type boot driver comprises a pre-EFI (PEI) phase driver and the second-type boot driver comprises a driver execution environment (DXE) phase driver. 
     
     
       7. The system of  claim 5  wherein first-type boot driver comprises a driver without dependencies and the second-type boot driver comprises a driver with dependencies. 
     
     
       8. The system of  claim 1  wherein, during the second state, the first processor is configured to fetch and execute boot tasks, wherein the first processor has priority over the second processor to fetch boot tasks. 
     
     
       9. The system of  claim 1 , wherein the first processor communicates with the second processor to synchronize the boot task execution performed by the first processor and the boot task fetch performed by the second processor. 
     
     
       10. The system of  claim 1  wherein the second processor fetches multiple boot driver routines during at least one fetch cycle upon accessing the boot task storage medium. 
     
     
       11. A non-transitory computer-readable medium storing instructions that, when executed, cause a processor to:
 configure a first processor to fetch boot tasks but not to execute boot tasks; 
 configure a second processor to execute boot tasks; and 
 synchronize boot task fetches performed by the first processor with boot task execution performed by the second processor by overlapping at least one boot driver fetch performed by the first processor with boot task execution performed by the second processor, thereby to reduce a boot-up time. 
 
     
     
       12. A boot-up method, comprising:
 assigning a first processor to fetch drivers but not to execute drivers; 
 assigning a second processor to execute previously fetched drivers; 
 overlapping at least one driver fetch by the first processor with driver execution by the second processor to reduce a boot-up time; and 
 executing a mufti-processor initiation driver stored in a Basic Input/Output System (BIOS) memory, wherein said execution initiates said assigning and overlapping steps. 
 
     
     
       13. The boot-up method of  claim 12  wherein the mufti-processor initiation driver is executed during a pre-EFI (PEI) phase. 
     
     
       14. The boot-up method of  claim 12  wherein said overlapping comprises overlapping fetches of driver execution environment (DXE) phase drivers and execution of DXE phase drivers. 
     
     
       15. The boot-up method of  claim 12  wherein said overlapping comprises overlapping fetches of driver execution environment (DXE) phase drivers and execution of pre-EFI (PEI) phase drivers.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.