IP Library Granted Patent US 9,886,580
Granted Patent B2
US 9,886,580 · App. 14/580,389 · Granted Feb 6, 2018

Method for optimizing boot time of an information handling system

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 9,886,580
App. No.
14/580,389
Granted
Feb 6, 2018
Kind
B2
Abstract

A method and information handling system (IHS) that optimizes boot time. The method includes a basic input output system (BIOS) performing an authentication check of drivers during an initial boot process. The results of the authentication check are stored along with an unified extensible firmware interface (UEFI) image for each driver in an authentication results data structure (ARDS). In response to receipt of a subsequent request to enable a secure boot of the IHS, when the initial boot process was performed with the secure boot disabled, the ARDS is accessed to determine if any of the drivers failed the authentication check. When none of the drivers have failed the authentication check, the boot process is continued using the UEFI images of the drivers. When at least one of the drivers has failed its authentication check, a notification is output indicating a failure of the authentication check.

Claims (81)

1. A computer-implemented method for optimizing boot time of an information handling system (IHS), the method comprising:

a basic input output system (BIOS) dynamically performing an authentication check of drivers within the IHS during an initial boot process of the IHS;

checking whether a boot up mode of the IHS is set to an optimized boot mode; and in response to the IHS being set to the optimized boot mode:

identifying unified extensible firmware interface (UEFI) images required for operating system (OS) deployment from among a plurality of UEFI images that includes images not required for OS deployment; and

storing, within an authentication results data structure (ARDS), an identification of a UEFI image for each driver that is checked, along with a result of the authentication check associated with that driver;

wherein said dynamically performing the authentication check and said storing comprises selectively performing the authentication check on only those identified UEFI images required for OS deployment and storing only the identification and associated result of the authentication check of the identified UEFI images within the ARDS;

in response to receipt of a subsequent request to enable a secure boot of the IHS, when the initial boot process was performed with the secure boot disabled:

accessing the ARDS to determine if any of the drivers failed its authentication check;

in response to none of the drivers failing its authentication check, continuing the boot process using the authenticated UEFI images of the drivers; and

in response to at least one of the drivers failing its authentication check, outputting a notification indicating a failure of the authentication check by the at least one driver.

2. The computer-implemented method of claim 1 , wherein:

the outputting of the notification comprises identifying within the notification which ones of the drivers failed its authentication check; and

the method further comprises initiating one or more actions based on a received user response to the notification.

3. The computer-implemented method of claim 1 , wherein performing an authentication check comprises:

accessing each of the drivers and retrieving a certificate from each driver that has a certificate;

determining if a retrieved certificate of a driver is valid; and

identifying each driver that does not have a certificate and each driver whose retrieved certificate is not valid as a driver that fails authentication.

4. The computer-implemented method of claim 3 , further comprising:

generating a hash to be utilized as the identification of a UEFI image corresponding to the driver;

storing the hash within the ARDS; and

associating the result of the authentication check for the driver with the hash within the ARDS.

5. The method of claim 1 , further comprising:

in response to completion of the authentication check of the drivers and generating a list of the UEFI images and associated result when a secure boot is not enabled, triggering an operating system (OS) deployment agent to initiate installation of an OS.

6. The method of claim 5 , further comprising:

in response to secure boot being enabled:

performing the check of the UEFI images from the ARDS to identify whether any of the UEFI images failed authentication;

in response to none of the UEFI images failing authentication, loading only the authenticated UEFI images; and

triggering the OS deployment agent to install the OS utilizing the authenticated UEFI images.

7. The method of claim 5 , further comprising:

in response to secure boot being disabled:

loading all of the UEFI images; and

triggering the OS deployment agent to install the OS.

8. The method of claim 5 , further comprising:

prompting for a user selection of an option from a group of options comprising: disabling secure boot; and re-starting the boot process.

9. The method of claim 8 , further comprising:

receiving a user selection from among disabling secure boot and re-starting the boot process; and

in response to the received user selection being to disable secure boot, triggering the OS deployment agent to install the OS in a non-secured environment.

10. An information handling system (IHS) comprising:

a processor;

a memory communicatively coupled to the processor via a system interconnect, the processor having firmware executing thereon to enable optimizing boot time of the IHS, wherein the firmware configures the processor to:

dynamically perform an authentication check of drivers within the IHS during an initial boot process of the IHS via a basic input output system (BIOS);

check whether a boot up mode of the IHS is set to an optimized boot mode; and in response to the IHS being set to the optimized boot mode:

identify unified extensible firmware interface (UEFI) images required for operating system (OS) deployment from among a plurality of UEFI images that includes images not required for OS deployment; and

store, within an authentication results data structure (ARDS), an identification of a UEFI image for each driver that is checked, along with a result of the authentication check associated with that driver;

wherein said dynamically performing the authentication check and said storing comprises selectively performing the authentication check on only those identified UEFI images required for OS deployment and storing only the identification and associated result of the authentication check of the identified UEFI images within the ARDS;

in response to receipt of a subsequent request to enable a secure boot of the IHS, when the initial boot process was performed with the secure boot disabled:

access the ARDS to determine if any of the drivers failed its authentication check;

in response to none of the drivers failing its authentication check, continue the boot process using the authenticated UEFI images of the drivers;

and in response to at least one of the drivers failing its authentication check, output a notification indicating a failure of the authentication check by the at least one driver.

11. The information handling system of claim 10 , wherein the outputting of the notification includes the firmware further configuring the processor to:

identify within the notification which ones of the drivers failed its authentication check; and

initiate one or more actions based on a received user response to the notification.

12. The information handling system of claim 10 , wherein performing an authentication check includes the firmware further configuring the processor to:

access each of the drivers and retrieving a certificate from each driver that has a certificate;

determine if a retrieved certificate of a driver is valid; and

identify each driver that does not have a certificate and each driver whose retrieved certificate is not valid as a driver that fails authentication.

13. The information handling system of claim 10 , wherein the firmware further configures the processor to:

generate a hash to be utilized as the identification of a UEFI image corresponding to the driver;

store the hash within the ARDS; and

associate the result of the authentication check for the driver with the hash within the ARDS.

14. The information handling system of claim 10 , wherein the firmware further configures the processor to:

check whether a boot up mode of the IHS is set to an optimized boot mode; and

in response to the IHS being set to the optimized boot mode:

identify UEFI images required for operating system (OS) deployment; and

wherein in dynamically performing the authentication check and said storing, the processor selectively performs the authentication check on only those identified UEFI images required for OS deployment and stores only the identification and associated result of the authentication check of the identified UEFI images within the ARDS.

15. The information handling system of claim 10 , wherein the firmware further configures the processor to:

trigger an operating system (OS) deployment agent to initiate installation of an OS, in response to completion of the authentication check of the drivers and generating a list of the UEFI images and associated result when secure boot is not enabled.

16. The information handling system of claim 15 , wherein the firmware further configures the processor to:

in response to secure boot being enabled:

perform the check of the UEFI images from the ARDS to identify whether any of the UEFI images failed authentication;

in response to none of the UEFI images failing authentication, load only the authenticated UEFI images; and

trigger the OS deployment agent to install the OS.

17. The information handling system of claim 15 , wherein the firmware further configures the processor to:

in response to secure boot being disabled:

load all of the UEFI images; and

trigger the OS deployment agent to install the OS.

18. The information handling system of claim 15 , wherein the firmware further configures the processor to:

prompt for a user selection of an option from a group of options comprising: disabling secure boot; and re-starting the boot process.

19. The information handling system of claim 15 , wherein the firmware further configures the processor to:

receive a user selection from among disabling secure boot and re-starting the boot process; and

in response to the received user selection being to disable secure boot, trigger the OS deployment agent to install the OS in a non-secured environment.

Assignments (15)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
RELEASE OF REEL 035104 FRAME 0043 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040027/0123 →
RELEASE OF REEL 035103 FRAME 0809 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040027/0934 →
RELEASE OF REEL 035103 FRAME 0536 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040016/0864 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035104/0043 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 035103/0536 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 035103/0809 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2014
From: DASAR, SUNDAR; KULKARNI, YOGESH P.; VIDYADHARA, SUMANTH; MUNGER, BILL; VENKATARAMUDU, RAGHAVENDRA
To: DELL PRODUCTS, L.P.
Reel/Frame 034574/0198 →