1 Booting 2 http://en.wikipedia.org/wiki/Booting 3 In computing, booting (also known as booting up) is a process that begins when a user turns on a 4 computer system and prepares the computer to perform its normal operations. On modern computers, this 5 typically involves loading and starting an operating system. The boot sequence is the initial set of operations 6 that the computer performs when power is switched on. A boot loader is a computer program that typically 7 loads the main operating system or runtime environment for the computer after completion of a power-on self- 8 test. 9 Since the IBM 701 in the 1950s, booting has been used to load programs and operating systems into the 10 main memory of stored-program computers, including mainframe computers, minicomputers, microcomputers, 11 personal computers, and consumer electronics devices. Some simpler embedded systems do not require a boot 12 sequence to begin functioning and may run programs stored in read-only memory (ROM) when turned on. 13 There are numerous examples of single and multi-stage boot sequences that begin with the execution of boot 14 program(s) stored in boot ROMs. During the booting process, the binary code of an operating system or 15 runtime environment may be loaded from nonvolatile secondary storage (such as a hard disk drive) into volatile, 16 or random-access memory (RAM) and then executed. The booting concept is also known as "Initial Program 17 Load" for IBM mainframe computers. 18 The computer word boot is short for bootstrap (itself short for bootstrap load). The term bootstrap 19 derives from the idiom to pull oneself up by one's bootstraps. The term refers to the paradox that a computer 20 cannot run without first loading software but must be running before any software can be loaded.[2] 21 Upon starting, a personal computer's x86 CPU runs the instruction located at the memory location CS:IP 22 F000:FFF0 of the BIOS, which wraps to linear address 0xFFFF0, the BIOS entry inside the ROM. This memory 23 location is close to the end of the 1 MB of system memory accessible in real mode. It typically contains a jump 24 instruction that transfers execution to the location of the BIOS start-up program. This program runs a power-on 25 self-test (POST) to check and initialize required devices. The BIOS goes through a pre-configured list of non- 26 volatile storage devices ("boot device sequence") until it finds one that is bootable. A bootable device is defined 27 as one that can be read from, and the last two bytes of the first sector contain the word 0xAA55 (also known as 28 the boot signature).The boot process can be considered complete when the computer is ready to interact with 29 the user, or the operating system is capable of running system programs or application programs. Typical 30 modern personal computers boot in about one minute, of which about 15 seconds are taken by a power-on self- 31 test (POST) and a preliminary boot loader, and the rest by loading the operating system and other software. 32 Time spent after the operating system loading can be considerably shortened to as little as 3 seconds[12] by 33 bringing the system up with all cores at once, as with coreboot.[13] Large servers may take several minutes to 34 boot and start all their services.