In computing, booting (booting up) is a bootstrapping process that starts operating systems when the user turns on a computer system.

A boot sequence is the initial set of operations that the computer performs when it is switched on. The bootloader typically loads the main operating system for the computer.

Computing systems powered by the central processor (or a set of processors) can only execute code found in the operating memory, also known as systems memory, that may be implemented in several technologies covered by the general types of: Read-Only Memory or ROM, and Random Access Memory or RAM.

Modern operating systems and application program code and data are stored on nonvolatile or persistent local or remote peripheral memories or mass storage devices. Typical examples of such persistent storage devices are: hard disk, CD, DVD, USB flash drive and Floppy drive.

When a computer is first powered on, it must initially rely only on the code and data stored in nonvolatile portion of the systems memory map, such as ROM, NVRAM or CMOS RAM. Persistent code and data residing in the systems memory map represent the bare minimum needed to access peripheral persistent devices and load into the systems memory all of the missing parts of the operating system.

Read the rest of the article here