1. A method of preserving virtual memory in a computer system, comprising: identifying a virtual memory allocation that is populated with state by an application; shutting down the application; rebooting an operating system in the computer system without modifying the virtual memory allocation, wherein rebooting the operating system comprises: receiving a copy of an updated operating system, transferring execution from the operating system to a loader, suspending one or more virtual machines running on the computer system, recording an allocation map and state for each of the one or more virtual machines, shutting down the operating system, reading a kernel of updated operating system into RAM via the loader, loading the allocation map and state for each of the one or more virtual machines, and resuming operation of the one or more virtual machines by the updated host operating system; restarting the application after the operating system has been rebooted; and reconnecting the application to the virtual memory allocation.