Program memory in a computer system is the memory storing the program. Since it contains the program (typically a list of instructions for the CPU), it can be read-only, in contrast to data memory, which needs to be writeable. In Embedded Systems, program memory is either ROM or (in most cases) Flash Memory. On large systems (such as PCs, servers, but also tablets etc. with typically Gigabytes of memory), the programs (applications) are all loaded into RAM. Program memory (ROM) is only needed for the actual boot process of the computer, right after Reset release.