IP Library Granted Patent US 9,235,510
Granted Patent B2
US 9,235,510 · App. 13/683,875 · Granted Jan 12, 2016

Processor with kernel mode access to user space virtual addresses

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,235,510
App. No.
13/683,875
Granted
Jan 12, 2016
Kind
B2
Abstract

A computer includes a memory and a processor connected to the memory. The processor includes memory segment configuration registers to store defined memory address segments and defined memory address segment attributes such that the processor operates in accordance with the defined memory address segments and defined memory address segment attributes to allow kernel mode access to user space virtual addresses for enhanced kernel mode memory capacity.

Claims (32)

1. A method, comprising:

storing defined memory address segments and defined memory address segment attributes in registers of a processor; and

operating the processor in accordance with the defined memory address segments and defined memory address segment attributes, wherein operating includes:

overriding fixed memory address segments with fixed attributes associated with the processor, and

allowing kernel mode access to user space virtual addresses for enhanced kernel mode memory capacity.

2. The method of claim 1 further comprising executing virtual address load instructions from user virtual memory while operating in kernel mode.

3. The method of claim 2 wherein the virtual address load instructions are selected from load byte kernel, load byte unsigned kernel, load halfword kernel, load halfword unsigned kernel and load word kernel.

4. The method of claim 1 further comprising executing virtual address store instructions to virtual memory while operating in kernel mode.

5. The method of claim 4 wherein the virtual address store instructions are selected from store byte kernel, store halfword kernel and store word kernel.

6. The method of claim 1 wherein storing includes storing an access permission defined memory address segment attribute.

7. The method of claim 6 wherein storing includes storing an access permission selected from user mode, kernel mode and supervisor mode.

8. The method of claim 1 wherein storing includes storing a cache feature defined memory address segment attribute, wherein the cache feature defines access to addresses within a defined memory address segment.

9. The method of claim 1 wherein storing includes storing a memory map feature defined memory address segment attribute, wherein the memory map feature specifies use of a translation look-aside buffer for an address within a defined memory address segment.

10. A computer, comprising:

a memory; and

a processor connected to the memory, wherein the processor includes memory segment configuration registers to store defined memory address segments and defined memory address segment attributes such that the processor operates in accordance with the defined memory address segments and defined memory address segment attributes, wherein the processor operates to override fixed memory address segments with fixed attributes associated with the processor and the processor allows kernel mode access to user space virtual addresses for enhanced kernel mode memory capacity.

11. The computer of claim 10 wherein the processor executes virtual address load instructions from user virtual memory while operating in kernel mode.

12. The computer of claim 10 wherein the processor executes virtual address store instructions to virtual memory while operating in kernel mode.

13. The computer of claim 10 wherein the defined memory address segment attributes are selected from an access permission attribute, a cache attribute and a memory map attribute.

14. The computer of claim 10 wherein the memory stores a hypervisor.

15. The computer of claim 10 wherein the memory stores privileged software that writes to the memory segment configuration registers at boot time.

16. The computer of claim 15 wherein the privileged software alternately configures the memory segment configuration registers to fixed memory address segments and configurable memory address segments.

17. A processor, comprising:

memory segment configuration registers to store defined memory address segments and defined memory address segment attributes such that the processor operates in accordance with the defined memory address segments and defined memory address segment attributes, the processor overriding fixed memory address segments with fixed attributes associated with the processor and the processor allowing kernel mode access to user space virtual addresses for enhanced kernel mode memory capacity.

18. The processor of claim 17 wherein the processor executes virtual address load instructions from user virtual memory while operating in kernel mode.

19. The processor of claim 17 wherein the processor executes virtual address store instructions to virtual memory while operating in kernel mode.

20. The processor of claim 17 wherein the defined memory address segment attributes are selected from an access permission attribute, a cache attribute and a memory map attribute.

21. A non-transitory computer readable storage medium including executable instructions to define a processor, comprising:

memory segment configuration registers to store defined memory address segments and defined memory address segment attributes such that the processor operates in accordance with the defined memory address segments and defined memory address segment attributes, the processor overriding fixed memory address segments with fixed attributes associated with the processor and the processor allowing kernel mode access to user space virtual addresses for enhanced kernel mode memory capacity.

22. The non-transitory computer readable storage medium of claim 21 wherein the processor executes virtual address load instructions from user virtual memory while operating in kernel mode.

23. The non-transitory computer readable storage medium of claim 21 wherein the processor executes virtual address store instructions to virtual memory while operating in kernel mode.

24. The non-transitory computer readable storage medium of claim 21 wherein the defined memory address segment attributes are selected from an access permission attribute, a cache attribute and a memory map attribute.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Dec 29, 2022
From: CAPITAL FINANCE ADMINISTRATION, LLC, AS ADMINISTRATIVE AGENT
To: MIPS TECH, LLC; WAVE COMPUTING INC.
Reel/Frame 062251/0251 →
SECURITY INTEREST Recorded Jun 14, 2021
From: MIPS TECH, LLC; WAVE COMPUTING, INC.
To: CAPITAL FINANCE ADMINISTRATION, LLC
Reel/Frame 056558/0903 →
RELEASE OF SECURITY INTEREST Recorded Jun 14, 2021
From: WAVE COMPUTING LIQUIDATING TRUST
To: MIPS TECH, INC.; HELLOSOFT, INC.; WAVE COMPUTING (UK) LIMITED; IMAGINATION TECHNOLOGIES, INC.; CAUSTIC GRAPHICS, INC.; MIPS TECH, LLC; WAVE COMPUTING, INC.
Reel/Frame 056589/0606 →
SECURITY INTEREST Recorded Feb 26, 2021
From: WAVE COMPUTING, INC.; MIPS TECH, LLC; MIPS TECH, INC.; HELLOSOFT, INC.; WAVE COMPUTING (UK) LIMITED; IMAGINATION TECHNOLOGIES, INC.; CAUSTIC GRAPHICS, INC.
To: WAVE COMPUTING LIQUIDATING TRUST
Reel/Frame 055429/0532 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2018
From: IMAGINATION TECHNOLOGIES LIMITED
To: HELLOSOFT LIMITED
Reel/Frame 046588/0985 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2018
From: HELLOSOFT LIMITED
To: MIPS TECH LIMITED
Reel/Frame 046589/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2018
From: MIPS TECH LIMITED
To: MIPS TECH, LLC
Reel/Frame 046589/0726 →
CHANGE OF NAME Recorded Apr 20, 2017
From: MIPS TECHNOLOGIES, INC.
To: IMAGINATION TECHNOLOGIES, LLC
Reel/Frame 042301/0084 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2013
From: PATEL, SANJAY; DEARMAN, CHRIS; SUDHAKAR, RANGANATHAN
To: MIPS TECHNOLOGIES, INC.
Reel/Frame 029756/0718 →