Reboot

In computing, rebooting is the process by which a running computer system is restarted, either intentionally or unintentionally. Reboots can be either a cold reboot (alternatively known as a hard reboot) in which the power to the system is physically turned off and back on again (causing an initial boot of the machine); or a warm reboot (or soft reboot) in which the system restarts while still powered up. The term restart (as a system command) is used to refer to a reboot when the operating system closes all programs and finalizes all pending input and output operations before initiating a soft reboot.

Terminology

[edit]

Etymology

[edit]

Early electronic computers (like the IBM 1401) had no operating system and little internal memory. The input was often a stack of punch cards or via a switch register. On systems with cards, the computer was initiated by pressing a start button that performed a single command - "read a card". This first card then instructed the machine to read more cards that eventually loaded a user program. This process was likened to an old saying, "picking yourself up by the bootstraps", referring to a horseman who lifts himself off the ground by pulling on the straps of his boots. This set of initiating punch cards was called "bootstrap cards". Thus a cold start was called booting the computer up. If the computer crashed, it was rebooted. The boot reference carried over to all subsequent types of computers.

Cold versus warm reboot

[edit]

For IBM PC compatible computers, a cold boot is a boot process in which the computer starts from a powerless state, in which the system performs a complete power-on self-test (POST).[1][2][3][4] Both the operating system and third-party software can initiate a cold boot; the restart command in Windows 9x initiates a cold reboot, unless Shift key is held.[1]: 509 

A warm boot is initiated by the BIOS, either as a result of the Control-Alt-Delete key combination[1][2][3][4] or directly through BIOS interrupt INT 19h.[5] It may not perform a complete POST - for example, it may skip the memory test - and may not perform a POST at all.[1][2][4] Malware may prevent or subvert a warm boot by intercepting the Ctrl + Alt + Delete key combination and prevent it from reaching BIOS.[6] The Windows NT family of operating systems also does the same and reserves the key combination for its own use.[7][8]

Operating systems based on Linux support an alternative to warm boot; the Linux kernel has optional support for kexec, a system call which transfers execution to a new kernel and skips hardware or firmware reset. The entire process occurs independently of the system firmware. The kernel being executed does not have to be a Linux kernel.[citation needed]

Outside the domain of IBM PC compatible computers, the types of boot may not be as clear. According to Sue Loh of Windows CE Base Team, Windows CE devices support three types of boots: Warm, cold and clean.[9] A warm boot discards program memory. A cold boot additionally discards storage memory (also known as the "object store"), while a clean boot erases all forms of memory storage from the device. However, since these areas do not exist on all Windows CE devices, users are only concerned with two forms of reboot: one that resets the volatile memory and one that wipes the device clean and restores factory settings. For example, for a Windows Mobile 5.0 device, the former is a cold boot and the latter is a clean boot.[9]

Hard reboot

[edit]

A hard reboot means that the system is not shut down in an orderly manner, skipping file system synchronisation and other activities that would occur on an orderly shutdown. This can be achieved by either applying a reset, by cycling power, by issuing the halt -q command in most Unix-like systems, or by triggering a kernel panic.

Hard reboots are used in the cold boot attack.

Restart

[edit]

The term "restart" is used by the Microsoft Windows and Linux families of operating systems to denote an operating system-assisted reboot. In a restart, the operating system ensures that all pending I/O operations are gracefully ended before commencing a reboot.

Causes

[edit]

Deliberate

[edit]
Redundant power supplies in a computer system reduce the risk of an unexpected loss of power.

Users may deliberately initiate a reboot. Rationale for such action may include:

  • Troubleshooting: Rebooting may be used by users, support staff or system administrators as a technique to work around bugs in software,[10] for example memory leaks or processes that hog resources to the detriment of the overall system, or to terminate malware. While this approach does not address the root cause of the issue, resetting a system back to a good, known state may allow it to be used again for some period until the issue next occurs.
  • Switching operating systems: On a multi-boot system without a hypervisor, a reboot is required to switch between installed operating systems.
  • Offensive: As stated earlier, components lose power during a cold reboot; therefore, components such as RAM that require power lose the data they hold. However, in a cold boot attack, special configurations may allow for part of the system state, like a RAM disk, to be preserved through the reboot.[11]

The means of performing a deliberate reboot also vary and may include:

  • Manual, hardware-based: A power switch or reset button can cause the system to reboot.[2] Doing so, however, may cause the loss of all unsaved data.[12]
  • Manual, software-based: Computer software and operating system can trigger a reboot as well; both Microsoft Windows and several Unix-like operating systems can be shut down from the command line[1]: 509 [13][14][15][16][17][18][19][20][21] or through the GUI.
  • Automated: Software can be scheduled to run at a certain time and date; therefore, it is possible to schedule a reboot.[22]

Power failure

[edit]

Unexpected loss of power for any reason (including power outage, power supply failure or depletion of battery on a mobile device) forces the system user to perform a cold boot once the power is restored. Some BIOSes have an option to automatically boot the system after a power failure.[23][24] An uninterruptible power supply (UPS), backup battery or redundant power supply can prevent such circumstances.

Random reboot

[edit]

"Random reboot" is a non-technical term referring to an unintended (and often undesired) reboot following a system crash, whose root cause may not immediately be evident to the user. Such crashes may occur due to a multitude of software and hardware problems, such as triple faults. They are generally symptomatic of an error in ring 0 that is not trapped by an error handler in an operating system or a hardware-triggered non-maskable interrupt.

Systems may be configured to reboot automatically after a power failure, or a fatal system error or kernel panic. The method by which this is done varies depending on whether the reboot can be handled via software or must be handled at the firmware or hardware level. Operating systems in the Windows NT family (from Windows NT 3.1 through Windows 7) have an option to modify the behavior of the error handler so that a computer immediately restarts rather than displaying a Blue Screen of Death (BSOD) error message. This option is enabled by default in some editions.

Hibernation

[edit]

The introduction of advanced power management allowed operating systems greater control of hardware power management features. With Advanced Configuration and Power Interface (ACPI), newer operating systems are able to manage different power states and thereby sleep and/or hibernate. While hibernation also involves turning a system off then subsequently back on again, the operating system does not start from scratch, thereby differentiating this process from rebooting.

Simulated reboot

[edit]

A reboot may be simulated by software running on an operating system. For example: the Sysinternals BlueScreen utility, which is used for pranking; or some modes of the bsod XScreenSaver "hack", for entertainment (albeit possibly concerning at first glance). Malware may also simulate a reboot, and thereby deceive a computer user for some nefarious purpose.[6]

Microsoft App-V sequencing tool captures all the file system operations of an installer in order to create a virtualized software package for users. As part of the sequencing process, it will detect when an installer requires a reboot, interrupt the triggered reboot, and instead simulate the required reboot by restarting services and loading/unloading libraries.[25]

Windows deviations and labeling criticism

[edit]

Windows 8 & 10 enable (by default) a hibernation-like "Fast Startup" (a.k.a. "Fast Boot") which can cause problems (including confusion) for users accustomed to turning off computers to (cold) reboot them.[26][27][28]

See also

[edit]

References

[edit]
  1. ^ a b c d e Jones, James G.; Landes, Craig; Tittel, Ed (2002). A+ Exam Cram 2 (Exam Cram 220-221, Exam Cram 220-222). Que Publishing. pp. 379–380, 509. ISBN 9780789728678.
  2. ^ a b c d Cooper, Jim (2002). Using MS-DOS 6.22. Que Publishing. pp. 24, 960, 964. ISBN 9780789725738.
  3. ^ a b Tulloch, Mitch; Tulloch, Ingrid (2002). Microsoft Encyclopedia of Networking (2nd ed.). Microsoft Press. p. 172. ISBN 0-7356-1378-8.
  4. ^ a b c Soper, Mark Edward (2004). Absolute Beginner's Guide to A+ Certification. Que Publishing. p. 188. ISBN 9780789730626.
  5. ^ "Hardware Troubleshooting: Cold Booting Versus Warm Booting". Support. Microsoft. 7 July 2005. Archived from the original on 21 February 2015.
  6. ^ a b Grimes, Roger (1 June 2001). "2". Malicious Mobile Code: Virus Protection for Windows. O'Reilly Media. p. 50. ISBN 9781565926820.
  7. ^ "Using CTRL+ALT+DEL key combination to open Windows Security opens Task Manager". Microsoft Support. Microsoft. 15 January 2006. Retrieved 19 January 2013.
  8. ^ Osterman, Larry (24 January 2005). "Why is Control-Alt-Delete the secure attention sequence (SAS)?". Larry Osterman's WebLog. MSDN Blogs. Retrieved 15 March 2007.
  9. ^ a b Loh, Sue (22 June 2005). "Boot Persistence Terminology". Windows CE Base Team Blog. Microsoft. Retrieved 3 March 2013.
  10. ^ Debogue, Jean. "Did you reboot". WeDebugYou.
  11. ^ Ken Freeze (28 October 1985), "Jram-3 Rivals Persyst Stretch In RAM Race of Add-On Boards", InfoWorld
  12. ^ Shelly, Gary B.; Vermaat, Misty E. (2012). Enhanced Discovering Computers, Complete: Your Interactive Guide to the Digital World, 2013 Edition. Cengage Learning. p. 400. ISBN 9781133598312.
  13. ^ "shutdown". Microsoft Learn. 5 October 2023.
  14. ^ "Stop-Computer". Microsoft Learn.
  15. ^ shutdown(8) – Darwin and macOS System Manager's Manual
  16. ^ shutdown(8) – DragonFly BSD System Maintenance and Operation Commands Manual
  17. ^ shutdown(8) – FreeBSD System Manager's Manual
  18. ^ shutdown(8) – Linux Programmer's Manual – Administration and Privileged Commands
  19. ^ shutdown(8) – NetBSD System Manager's Manual
  20. ^ shutdown(8) – OpenBSD System Manager's Manual
  21. ^ shutdown(8) – Solaris 11.4 System Administration Commands Reference Manual
  22. ^ Gary A. Donahue, Gary A. (2011). Network Warrior (2nd ed.). Sebastopol: O'Reilly Media. p. 698. ISBN 9781449309350.
  23. ^ "AsRock 775i65G User Manual" (PDF). p. 32.
  24. ^ "Supermicro C7Q67 User's Manual" (PDF). p. 69.[permanent dead link]
  25. ^ "Microsoft App-V 4.6 SP1 Sequencing Guide".
  26. ^ Walter Glenn (3 March 2016). "The Pros and Cons of Windows 10's "Fast Startup" Mode". How-To Geek.
  27. ^ Oliver Niehus (14 December 2012). "Windows 8: Fast Boot". MSDN - Oliver's Blog.
  28. ^ "Distinguishing Fast Startup from Wake-from-Hibernation". Microsoft Hardware Dev Center. 15 December 2021.