System and method for using a using vendor-long descriptor in ACPI for the chipset registers
First Claim
1. A mechanism for hiding memory from an operating system, where the memory is owned by a device and is allocated using memory mapped I/O (MMIO), comprising:
- a computer system connected to a plurality of devices, wherein an operating system interacts with the plurality of devices using Advanced Configuration and Power Interface (ACPI);
a memory block connected to the computer system, wherein the memory block is allocated to the plurality of devices to provide an MMIO register map for device interaction; and
means for hiding regions of memory from the operating system, the hidden memory being allocated to at least one of the plurality of devices, wherein the hidden memory is accessible to at least one tool, the tool interacting with at least one of the devices having allocated hidden memory.
7 Assignments
0 Petitions
Accused Products
Abstract
A system and method for using memory mapped I/O (MMIO) to manage system devices is provided. A parent device in the ACPI namespace uses (MMIO) to identify the memory addresses of its children devices. An existing, but unused, construct of ACPI is used to pass the MMIO information through the operating system (OS) to the device drivers, enabling memory to be reserved by a device, and also remain hidden to the OS. The vendor defined resource data type for long information, also known as the “vendor-long” descriptor, is used to pass the appropriate information through the OS.
-
Citations
16 Claims
-
1. A mechanism for hiding memory from an operating system, where the memory is owned by a device and is allocated using memory mapped I/O (MMIO), comprising:
-
a computer system connected to a plurality of devices, wherein an operating system interacts with the plurality of devices using Advanced Configuration and Power Interface (ACPI);
a memory block connected to the computer system, wherein the memory block is allocated to the plurality of devices to provide an MMIO register map for device interaction; and
means for hiding regions of memory from the operating system, the hidden memory being allocated to at least one of the plurality of devices, wherein the hidden memory is accessible to at least one tool, the tool interacting with at least one of the devices having allocated hidden memory. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of using memory mapped I/O (MMIO) to manage system devices, comprising:
-
allocating memory in a computer system to a plurality of devices, the memory corresponding to a register map of the plurality of devices;
identifying areas of allocated memory that should be hidden from the operating system, the hidden areas being accessible by at least one tool interacting with at least one of the plurality of devices; and
enabling an operating system running on the computer system to view selected memory allocations of MMIO, the operating system ignoring the hidden areas of allocated memory. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computing device using memory mapped I/O (MMIO) for hiding selected regions of mapped memory from an operating system, comprising:
-
a central processing unit (CPU) having memory;
a memory bus connecting the CPU with a plurality of devices, wherein the memory bus comprises data, address and control information, wherein an operating system interacts with the plurality of devices using Advanced Configuration and Power Interface (ACPI);
a memory block connected to the CPU, wherein the memory block is allocated to the plurality of devices to provide an MMIO register map for device interaction; and
means for hiding regions of memory from the operating system, the hidden memory being allocated to at least one of the plurality of devices, wherein the hidden memory is accessible to at least one tool, the tool interacting with at least one of the devices having allocated hidden memory. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification