1. A checkpointing method for creating a file representing a restorable state of a virtual machine in a computing system, comprising: at least one of: (a) identifying processes executing within the virtual machine that may store confidential data; and marking memory pages and files that potentially contain data stored by the identified processes; and (b) providing an application programming interface for marking memory regions and files within the virtual machine that contain confidential data stored by processes; and creating a checkpoint file, by capturing memory pages and files representing a current state of the computing system, which excludes information from all of the marked memory pages and files.