Described herein is a software layout system that speeds up computer system boot time and / or application initialization time by moving immutable data and executable code into byte-addressable, persistent random access memory (BPRAM). The system determines which components and aspects of the operating system or application rarely change. From this information, the system builds a high performance memory BPRAM cache to provide faster access to these frequently used components, including the kernel. As a result, the kernel or application code and data structures have high performance access and execution times with respect to memory fetching. As such, the software layout system provides a faster way to prepare operating systems and applications for normal operation, and reduces the time spent on initialization.
展开▼