IP Library Granted Patent US 8,510,543
Granted Patent B1
US 8,510,543 · App. 12/786,973 · Granted Aug 13, 2013

Firmware supporting multiple boot paths

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,510,543
App. No.
12/786,973
Granted
Aug 13, 2013
Kind
B1
Abstract

Technologies for a basic input/output system (BIOS) firmware that can take different boot paths depending on the operating system that a user selects to boot within a computer system are described herein. Each boot path can handle initialization differently based upon the needs of the operating system and overall project design. A method for supporting multiple boot paths on a computer includes receiving a boot path indicator that indicates a boot path to be executed. Once the boot path indicator is received, the boot path corresponding to the boot path indicator is executed and an operating system corresponding to the boot path indicator is booted.

Claims (40)

1. A computer-implemented method for supporting multiple boot paths on a computer including Basic Input/Output System (BIOS) firmware, the method comprising performing computer-implemented operations for:

receiving a boot path indicator indicating a booth path, among the multiple boot paths, to be executed by the BIOS firmware;

responsive to receiving the boot path indicator, executing, by the BIOS firmware, the boot path corresponding to the boot path indicator, wherein executing the boot path corresponding to the boot path indicator comprises:

retrieving configuration information associated with the boot path corresponding to the boot path indicator;

generating a configuration of the firmware that is associated with the boot path based on the retrieved configuration information; and

performing the configuration of the firmware, including initializing at least one firmware module that is specified by the retrieved configuration information associated with the boot path; and

launching, by the BIOS firmware, an operating system, among a plurality of operating systems, that is supported by the boot path that corresponds to the boot path indicator.

2. The computer-implemented method of claim 1 , wherein retrieving the configuration information associated with the boot path corresponding to the boot path indicator comprises accessing a configuration table associated with the boot path, wherein the configuration is performed based on information specified in the accessed configuration table.

3. The computer-implemented method of claim 2 , wherein performing the configuration comprises initializing at least one firmware module specified in the configuration table.

4. The computer-implemented method of claim 2 , wherein performing the configuration comprises excluding initialization of at least one firmware module specified in the configuration table.

5. The computer-implemented method of claim 1 , wherein launching the operating system comprises mounting a boot device containing the operating system corresponding to the boot path.

6. The computer-implemented method of claim 1 , wherein receiving a boot path indicator configured to indicate a boot path to be executed comprises receiving the boot path indicator from a user input including at least one of a hotkey, a switch, a button and other input operated by a user.

7. The computer-implemented method of claim 1 , further comprising setting, by a boot path selector application, a value corresponding to the boot path indicator within a non-volatile memory.

8. The computer-implemented method of claim 7 , further comprising retrieving the value corresponding to the boot path indicator, set by the boot path selector application, from the non-volatile memory upon subsequent booting of the computer.

9. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer including Basic Input/Output System (BIOS) firmware, cause the computer to perform operations comprising:

receiving a boot path indicator indicating a boot path, among multiple boot paths, to be executed by the BIOS firmware;

responsive to receiving the boot path indicator, executing, by the BIOS firmware, the boot path indicated by the boot path indicator, wherein executing the boot path corresponding to the boot path indicator comprises:

retrieving configuration information associated with the boot path corresponding to the boot path indicator;

generating a configuration of the firmware that is associated with the boot path based on the retrieved configuration information; and

performing the configuration of the firmware, including initializing at least one firmware module that is specified by the retrieved configuration information associated with the boot path; and

launching, by the BIOS firmware, an operating system, among a plurality of operating systems, that is supported by the boot path that corresponds to the boot path indicator.

10. The non-transitory computer-readable storage medium of claim 9 , wherein retrieving the configuration information associated with the boot path corresponding to the boot path indicator further comprises accessing a configuration table associated with the boot path, wherein the configuration is performed based on information specified in the accessed configuration table.

11. The non-transitory computer-readable storage medium of claim 10 , wherein performing the configuration comprises initializing at least one firmware module specified in the configuration table.

12. The non-transitory computer-readable medium of claim 9 , wherein the computer-executable instructions which, when executed by the computer, cause the computer to launch the operating system also cause the computer to mount a boot device containing the operating system corresponding to the boot path.

13. The non-transitory computer-readable storage medium of claim 9 , wherein the boot path indicator is received from a user input including at least one of a hotkey, a switch, a button and other input operated by a user.

14. The non-transitory computer-readable storage medium of claim 9 , having further computer-executable instructions stored thereupon which, when executed by the computer, cause the computer to set, a boot path selector application, a value corresponding to the boot path indicator within a non-volatile memory.

15. The non-transitory computer-readable storage medium of claim 9 , having further computer-executable instructions stored thereupon which, when executed by the computer, cause the computer to retrieve the value corresponding to the boot path indicator, set by the boot path selector application, from the non-volatile memory upon subsequent booting of the computer.

16. A computer system for supporting multiple boot paths, comprising:

a central processing unit (CPU); and

a non-volatile memory having at least one operating system and a including Basic Input/Output System (BIOS) firmware executable by the CPU stored therein, the BIOS firmware comprising-instructions which, when executed by the CPU, cause the CPU to perform operations comprising:

receiving a boot path indicator indicating a boot path, among the multiple boot paths, to be executed by the BIOS firmware,

responsive to receiving the boot path indicator, causing the BIOS firmware to execute the boot path corresponding to the boot path indicator, wherein executing the boot path corresponding to the boot path indicator comprises:

retrieving configuration information associated with the boot path corresponding to the boot path indicator;

generating a configuration of the firmware that is associated with the boot path based on the retrieved configuration information; and

performing the configuration of the firmware, including initializing at least one firmware module that is specified by the retrieved configuration information associated with the boot path, and

causing the BIOS firmware to launch the at least one operating system, among a plurality of operating systems, that is supported by the boot path that corresponds to the boot path indicator.

17. The computing system of claim 16 , wherein retrieving the configuration information associated with the boot path corresponding to the boot path indicator further comprises accessing a configuration table associated with the boot path, wherein the configuration is performed based on information specified in the accessed configuration table.

18. The computer system of claim 16 , wherein the instructions which, when executed by the CPU, cause the CPU to launch the operating system also cause the CPU to mount a boot device containing the operating system corresponding to the boot path.

19. The computer system of claim 16 , wherein the BIOS firmware comprises further instructions which, when executed by the CPU, cause the CPU to set, by a boot path selector application, a value corresponding to the boot path indicator within the non-volatile memory.

20. The computer system of claim 16 , wherein the BIOS firmware comprises further instructions which, when executed by the CPU, cause the CPU to retrieve the value corresponding to the boot path indicator, set by the boot path selector application, from the non-volatile memory upon subsequent booting of the computer system.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0795 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2020
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: AMZETTA TECHNOLOGIES, LLC
Reel/Frame 052395/0287 →
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 May 25, 2010
From: SHANKAR, SUBRAMONIAN; NAREY, JACOB; GYSIN, WILL
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 024437/0607 →