Patent ID: 8276201
Filing Date: 2012-09-25
Classification: G06F

Abstract:
1. A method for protecting the integrity of a set of memory pages to be accessed by an operating system of a data processing system, the method comprising: running the operating system in a virtual machine (VM) of the data processing system; verifying the integrity of the set of memory pages on loading of pages in the set of memory pages to a memory of the data processing system for access by the operating system; in response to verification of the integrity, designating the set of memory pages as trusted pages and, in a mirror page table to be used by the operating system during the access, marking non-trusted pages as paged, the minor page table including data entries that correspond to data entries in the system page table; in response to a subsequent page fault interrupt for a non-trusted page, remapping the set of pages to a region of the data processing system memory, the data processing system memory is internal to the data processing system and is inaccessible to the virtual machine (VM); maintaining the minor page table , the mirror page table maintained by the operating system in operation to ensure that the data entries in the mirror page table continue to correspond to data entries in the system page table; designating the set of memory pages as trusted pages by marking each page in the set as trusted in the minor page table; marking non-trusted pages in the minor page table as paged; controlling the data processing system such that only the mirror page table is used by the operating system during the access; and in response to the page fault interrupt for a non-trusted page, controlling the data processing system such that the operating system reverts to use of the system page table.