Patent ID: 8745414
Filing Date: 2014-06-03
Classification: G06F

Abstract:
1. A computer system comprising: one or more processors; memory comprising a secure memory area and an unsecure memory area divided by a secure memory boundary separating a first part of the memory from a second part of the memory, the first part of the memory being the secure memory area and the second part of the memory being the unsecure memory area, the memory storing secure system software and unsecure system software, the secure system software being secure in that the secure system software is digitally signed such that whether the secure system software has been tampered with can be detected, the unsecure system software being unsecure in that whether the unsecure system software has been tampered with cannot be determined; and firmware to, in response to receiving a user-initiated suspend-to-memory signal, block suspensions to the memory, wherein the firmware is to determine whether the unsecure system software or the secure system software is currently being run on the processors, wherein where the unsecure system software is currently being run, the firmware is to move the secure memory boundary so that the secure system software is within the unsecure memory area, where before the secure system software was within the secure memory area, such the secure system software itself is not moved within the memory, wherein where the unsecure system software is currently being run, the firmware is to pass control to the secure system software so that the processors run the secure system software such that the secure system software cannot be tampered with by the unsecure system software due to the unsecure system software no longer being run on the processors, wherein where the secure system software is currently being run, the firmware is to move the secure memory boundary so that the secure system software is within the secure memory area, where before the secure system software was within the unsecure memory area, such that the secure system software Is not moved within the memory, wherein where the secure system software is currently being run, the firmware is to pass control to the unsecure system software so that the processors run the unsecure system software such that the secure system software cannot be tampered with by the unsecure system software due to the secure system software being stored within the secure memory area.