IP Library Granted Patent US 12,131,178
Granted Patent B2
US 12,131,178 · App. 18/054,858 · Granted Oct 29, 2024

Dynamic configuration of a computer processor based on the presence of a hypervisor

Inventor: Steven Jeffrey Wallach (Dallas, TX)
Assignee: Micron Technology, Inc.
G06F9/45558G06F9/4401G06F9/4403G06F12/1009G06F9/485G06F13/102
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 12,131,178
App. No.
18/054,858
Granted
Oct 29, 2024
Kind
B2
Abstract

Systems, apparatuses, and methods related to a hypervisor status register in a computer processor are described. For example, a memory coupled to the computer processor can store instructions of routines of predefined, non-hierarchical domains. The computer processor can store a value in the hypervisor status register during a power up process of the computer system. The value stored in the hypervisor status register that identifies whether or not an operating hypervisor is present in the computer system. The computer processor can configure its operations (e.g., address translation) based on the value stored in the hypervisor status register.

Claims (36)

1. An apparatus, comprising:

a memory configured to store at least instructions of routines of a predefined set of domains; and

a processor coupled with the memory, the processor comprising a status register, and the processor configured to:

determine a value stored in the status register, the value indicative of whether or not an operating hypervisor is present; and

customize an operation of a computer system based on the value stored in the status register;

wherein the value stored in the status register is not adjustable outside of a power up process of the apparatus.

2. The apparatus of claim 1 , wherein the power up process comprises an initial powering on of the processor of the apparatus.

3. The apparatus of claim 1 , wherein the processor is further configured to store the value in the status register during a power up process of the apparatus.

4. The apparatus of claim 1 , wherein the predefined set of domains comprises at least one of a domain for hypervisor, a domain for operating system, or a domain for application, or any combination thereof.

5. The apparatus of claim 4 , wherein the predefined set of domains have no predefined levels of trust.

6. The apparatus of claim 1 , wherein the customization of the operation comprises the processor configured to customize address translation operations in the processor according to the value stored in the status register.

7. The apparatus of claim 6 , wherein the customization of the operation comprises the processor configured to use a virtual machine identifier in address translation in response to the status register indicating that an operating hypervisor is present in the apparatus.

8. The apparatus of claim 6 , wherein the customization of the operation comprises the processor configured to perform address translation without using a virtual machine identifier in response to the status register indicating that no operating hypervisor is present in the apparatus.

9. The apparatus of claim 6 , wherein the customization of the operation comprises the processor configured to trap an operation performed in execution of an operating system running in a virtual machine in generating a page table entry mapping a virtual address page to a pseudo-physical address page, in response to the status register indicating that an operating hypervisor is present in the apparatus.

10. The apparatus of claim 9 , wherein the processor is configured to execute a routine of the hypervisor to identify a physical address page corresponding to the pseudo-physical address page in the virtual machine, in response to the operation of the operating system running in the virtual machine is trapped.

11. The apparatus of claim 10 , wherein the processor is configured to modify the page table entry mapping the virtual address page to the pseudo-physical address page into a page table entry mapping the virtual address page to the physical address page.

12. A processor, comprising:

a status register, and the processor configured to:

determine a value stored in the status register, the value indicative of whether or not an operating hypervisor is present in the system; and

customize an operation of a computer system comprising the processor on the value stored in the status register;

wherein the value stored in the status register is not adjustable outside of a power up process of the apparatus.

13. The processor of claim 12 , wherein the customization of the operation comprises the processor configured to customize translation of virtual memory addresses to physical memory addresses according to the value stored in the status register.

14. The processor of claim 12 , wherein the customization of the operation comprises the processor configured to apply a security control to a resource of the computer system based on the value stored in the status register.

15. The processor of claim 14 , wherein the resource comprises at least one of a privileged register, a called routine, or a memory region of a memory device of the computer system.

16. The processor of claim 14 , wherein processor is coupled to a memory, and the memory is configured to store at least instructions of routines of a predefined set of domains, and further wherein the processor is further configured to, during execution of one of the routines, select a setting for the security control that is preassociated with a domain for which one of the routines is being executed.

17. The processor of claim 16 , wherein the setting is indicative of whether access to the memory is permissible while the one of the routines is being executed.

18. A method, comprising:

storing in a memory at least instructions of routines of a predefined set of domains;

providing, in a processor coupled with the memory, a status register;

setting up a value in the status register to indicate whether or not an operating hypervisor is present; and

customizing operations in the processor based on the value stored in the status register;

wherein the value stored in the status register is not adjustable outside of a power up process of the apparatus.

19. The method of claim 18 , wherein the customizing of the operations comprising:

customizing translation of virtual memory addresses to physical memory addresses according to the value stored in the status register.

20. The method of claim 18 , wherein the customizing of the operations comprising:

applying a security control to a resource of the computer system based on the value stored in the status register.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2022
From: WALLACH, STEVEN JEFFREY
To: MICRON TECHNOLOGY, INC.
Reel/Frame 061744/0430 →
Continuity (8)
Continuation 16520304 · Jul 23, 2019
Provisional Application 62724929 · Aug 30, 2018
Provisional Application 62724999 · Aug 30, 2018
Provisional Application 62724896 · Aug 30, 2018
Provisional Application 62725100 · Aug 30, 2018
Provisional Application 62724913 · Aug 30, 2018
Provisional Application 62725030 · Aug 30, 2018
Related Publication 20230074273A1 · Mar 9, 2023
Cited By (1)
US 12,578,984