Patent US6148387A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6148387A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for securely utilizing basic input and output system (BIOS) services

Assignee: Kinglite Holdings Inc
•
Filing: 1999-06-18
•
Granted: 2000-11-14
•
Expires: 2019-06-18
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In accordance with one aspect of the current invention, the system comprises a memory for storing instruction sequences by which the processor-based system is processed, where the memory includes a physical memory and a virtual memory. The system also comprises a processor for executing the stored instruction sequences. The stored instruction sequences include process acts to cause the processor to: map a plurality of predetermined instruction sequences from the physical memory to the virtual memory, determine an offset to one of the plurality of predetermined instruction sequences in the virtual memory, receive an instruction to execute the one of the plurality of predetermined instruction sequences, transfer control to the one of the plurality of predetermined instruction sequences, and process the one of the plurality of predetermined instruction sequences from the virtual memory. In accordance with another aspect of the present invention, the system includes an access driver to generate a service request to utilize BIOS services such that the service request contains a service request signature created using a private key in a cryptographic key pair. The system also includes an interface to verify the service request signature using a public key in the cryptographic key pair to ensure integrity of the service request.

Inventors

  • 👤 Leonard J. Galasso
  • 👤 Matthew E. Zilmer
  • 👤 Quang Phan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 05:37
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/50; G06F21/57; G06F12/00; G06F12/02; G06F12/0223; G06F9/00; G06F9/06; G06F9/44; G06F9/445; G06F9/448; G06F9/4482; G06F9/4484

Claims Analysis

Total Claims: 31
Claim 1
Independent Claim 177 words
A system for accessing and executing instruction sequences in a physical memory from a virtual memory in a processor-based system, comprising: a memory for storing instruction sequences by which the processor-based system is processed, the memory including a physical memory and a virtual memory; and a processor for executing the stored instruction sequences; and wherein the stored instruction sequences cause the processor to: (a) map a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and map BIOS data from the physical memory to the virtual memory; (b) determine a starting virtual address of the BIOS service directory; and determine a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receive an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transfer control to the one of said plurality of predetermined instruction sequences; and (e) process the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 2
Independent Claim 177 words
A system for accessing and executing instruction sequences in a physical memory from a virtual memory in a processor-based system, comprising: a memory for storing instruction sequences by which the processor-based system is processed, the memory including a physical memory and a virtual memory; and a processor for executing the stored instruction sequences; and wherein the stored instruction sequences cause the processor to: (a) map a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and map BIOS data from the physical memory to the virtual memory; (b) determine a starting virtual address of the BIOS service directory; and determine a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receive an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transfer control to the one of said plurality of predetermined instruction sequences; and (e) process the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 3
Dependent Claim 16 words
The system of claim 1, wherein in (c), the instruction is made from an application program.
Claim 4
Dependent Claim 16 words
The system of claim 1, wherein in (c), the instruction is made from a class driver.
Claim 5
Dependent Claim 39 words
The system of claim 1, wherein (d) comprises: (d.1) creating a register stack in a memory location; (d.1) creating a register stack in a memory location; (d.3) transferring control to the one of the plurality of BIOS instruction sequences.
Claim 6
Dependent Claim 22 words
The system of claim 4, wherein in (d.1), the memory location is a buffer located in a dynamic random access memory (DRAM).
Claim 7
Dependent Claim 19 words
The system of claim 4, wherein in (d.1), the memory location is a buffer located in a main memory.
Claim 8
Dependent Claim 71 words
The system of claim 4, wherein (e) comprises: (e.1) determining if the starting virtual address is within a range of addresses mapped from the physical memory to the virtual memory; and (e.2) if so, executing the one of the plurality of BIOS instruction sequences from the virtual memory, otherwise indicating that the starting virtual address is not within the range of addresses mapped from the physical memory to the virtual memory.
Claim 9
Independent Claim 133 words
A method for accessing and executing instruction sequences in physical memory from virtual memory in a processor-based system, comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service director; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 10
Independent Claim 133 words
A method for accessing and executing instruction sequences in physical memory from virtual memory in a processor-based system, comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service director; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 11
Dependent Claim 16 words
The method of claim 8, wherein in (c), the instruction is made from an application program.
Claim 12
Dependent Claim 16 words
The method of claim 8, wherein in (c), the instruction is made from a class driver.
Claim 13
Dependent Claim 53 words
The method of claim 8, wherein (d) comprises: (d.1) creating a register stack in a memory location; (d.2) identifying a location of the starting virtual address of one of the plurality of BIOS instruction sequences in the register stack; and (d.3) transferring control to the one of the plurality of BIOS instruction sequences.
Claim 14
Dependent Claim 22 words
The method of claim 11, wherein in (d.1), the memory location is a buffer located in a dynamic random access memory (DRAM).
Claim 15
Dependent Claim 19 words
The method of claim 11, wherein in (d.1), the memory location is a buffer located in a main memory.
Claim 16
Dependent Claim 71 words
The method of claim 11, wherein (e) comprises: (e.1) determining if the starting virtual address is within a range of addresses mapped from the physical memory to the virtual memory; and (e.2) if so, executing the one of the plurality of BIOS instruction sequences from the virtual memory, otherwise indicating that the starting virtual address is not within the range of addresses mapped from the physical memory to the virtual memory.
Claim 17
Dependent Claim 135 words
Computer-executable process for accessing and executing instruction sequences in physical memory from virtual memory in a processor-based system, the process comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 18
Dependent Claim 135 words
Computer-executable process for accessing and executing instruction sequences in physical memory from virtual memory in a processor-based system, the process comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 19
Dependent Claim 16 words
Computer-executable process of claim 15, wherein in (c), the instruction is made from an application program.
Claim 20
Dependent Claim 53 words
Computer-executable process of claim 15, wherein (d) comprises: (d.1) creating a register stack in a memory location; (d.2) identifying a location of the starting virtual address of one of the plurality of BIOS instruction sequences in the register stack; and (d.3) transferring control to the one of the plurality of BIOS instruction sequences.
Claim 21
Dependent Claim 22 words
Computer-executable process of claim 17, wherein in (d.1), the memory location is a buffer located in a dynamic random access memory (DRAM).
Claim 22
Dependent Claim 19 words
Computer-executable process in claim 17, wherein in (d.1), the memory location is a buffer located in a main memory.
Claim 23
Dependent Claim 71 words
Computer-executable process steps of claim 17, wherein (e) comprises: (e.1) determining if the starting virtual address is within a range of addresses mapped from the physical memory to the virtual memory; and (e.2) if so, executing the one of the plurality of BIOS instruction sequences from the virtual memory, otherwise that the starting virtual address is not within the range of addresses mapped from the physical memory to the virtual memory.
Claim 24
Independent Claim 186 words
A system for accessing instruction sequences in a physical memory from a virtual memory in a processor-based system, comprising: a memory for storing instruction sequences by which the processor-based system is processed, the memory including a physical memory and a virtual memory; and a processor for executing the stored instruction sequences; and wherein the stored instruction sequences cause the processor to: (a) map a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a plurality of BIOS read only memory (ROM) instruction sequences and a BIOS service directory; and map BIOS data from the physical memory to the virtual memory; (b) determine a starting virtual address of the BIOS service directory; and determine a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receive an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transfer control to the one of said plurality of predetermined instruction sequences; and (e) process the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 25
Independent Claim 186 words
A system for accessing instruction sequences in a physical memory from a virtual memory in a processor-based system, comprising: a memory for storing instruction sequences by which the processor-based system is processed, the memory including a physical memory and a virtual memory; and a processor for executing the stored instruction sequences; and wherein the stored instruction sequences cause the processor to: (a) map a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a plurality of BIOS read only memory (ROM) instruction sequences and a BIOS service directory; and map BIOS data from the physical memory to the virtual memory; (b) determine a starting virtual address of the BIOS service directory; and determine a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receive an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transfer control to the one of said plurality of predetermined instruction sequences; and (e) process the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 26
Dependent Claim 41 words
The system of claim 21, wherein (d) comprises: (d.1) creating a register stack in a memory location and; (d.2) identifying a location of the starting virtual address of one of the plurality of BIOS ROM instruction sequences in the register stack.
Claim 27
Dependent Claim 72 words
The system of claim 22, wherein (e) comprises: (e.1) determining if the starting virtual address is within a range of addresses mapped from the physical memory to the virtual memory; and (e.2) if so, reading the one of the plurality of BIOS ROM instruction sequences from the virtual memory, otherwise indicating that the starting virtual address is not within the range of addresses mapped from the physical memory to the virtual memory.
Claim 28
Independent Claim 142 words
A method for accessing instruction sequences in physical memory from virtual memory in a processor-based system, comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a plurality of BIOS read only memory (ROM) instruction sequences and a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 29
Independent Claim 142 words
A method for accessing instruction sequences in physical memory from virtual memory in a processor-based system, comprising: (a) mapping a plurality of BIOS instruction sequences from the physical memory to the virtual memory, said BIOS instruction sequences including a plurality of BIOS read only memory (ROM) instruction sequences and a BIOS service directory; and mapping BIOS data from the physical memory to the virtual memory; (b) determining a starting virtual address of the BIOS service directory; and determining a starting virtual address of one of the plurality of BIOS instruction sequences by reference to the BIOS service directory; (c) receiving an instruction to execute the one of said plurality of predetermined instruction sequences; (d) transferring control to the one of said plurality of predetermined instruction sequences; and (e) processing the one of said plurality of predetermined instruction sequences from the virtual memory.
Claim 30
Dependent Claim 41 words
The method of claim 24, wherein (d) comprises: (d.1) creating a register stack in a memory location; and (d.2) identifying a location of the starting virtual address of one of the plurality of BIOS ROM instruction sequences in the register stack.
Claim 31
Dependent Claim 72 words
The method of claim 25, wherein (e) comprises: (e.1) determining if the starting virtual address is within a range of addresses mapped from the physical memory to the virtual memory; and (e.2) if so, reading the one of the plurality of BIOS ROM instruction sequences from the virtual memory, otherwise indicating that the starting virtual address is not within the range of addresses mapped from the physical memory to the virtual memory.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-11-14 2004-05-15 2004-11-14 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-11-14 2008-05-15 2008-11-14 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-11-14 2012-05-15 2012-11-14 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag