question: Why does a computer's bootloader not require a factory reset?
comment: It does. However, the way you install a bootloader onto your computer is a little different than with Windows. Generally, to install a bootloader onto your computer, you have to use a program called a package manager, which is a program that you install with your operating system. The package manager is usually an installer that you download from the internet. Sometimes, you can also run the package manager directly from the internet. When you install a bootloader, it will take you a few seconds to verify the bootloader is working correctly. If everything is working, the installer will give you a warning about a potential problem. Once you verify that everything is working, you will get a number of options that can help you resolve the problem. These options vary depending on the OS and the format of the bootloader. It is actually not uncommon to refer to this as a BIOS flash, because the BIOS flash is designed for a specific chip (usually the CPU) to be installed. In this case, the BIOS will make sure that the CPU has the correct version of the BIOS installed as well. This is why if you have a bad BIOS, you can install a bad BIOS, because it will boot the wrong version of the BIOS and cause serious problems. The package manager can also be used to access the BIOS flash, but I think that would be a bit more work than the bootloader. The package manager is usually a program that you use to install a bootloader. In this case, the package manager is usually a pretty easy to use program that will give you the options to get the bootloader working correctly, and will let you install a bootloader. I myself have used this program to install a number of different bootloaders (for Windows XP and older) and it worked pretty well. Hope that helps, feel free to ask any questions.
passages: It has been customary for Arm-based Linux distributions to include a boot loader, that necessarily was customised for specific boards, for example Raspberry Pi or Hackberry A10. This has created problems for the creators of Linux distributions as some part of the operating system must be compiled specifically for every board variant, or updated to support new boards. However, some modern SoCs (for example, Freescale i.MX6) have a vendor-provided boot loader with device tree on a separate chip from the operating system.
   Some devices implement a feature called "verified boot", "trusted boot" or "secure boot", which will only allow signed software to run on the device, usually from the device manufacturer. This is considered a restriction unless users either have the ability to disable it or have the ability to sign the software.
  
  Section::::Instances of hardware restriction.:Android devices.
  
  Many modern Android devices, such as Huawei's and Nokia's come with the bootloader locked.
  
  Section::::Instances of hardware restriction.:Apple devices.
   Factory resets can be achieved in a variety of ways depending on the electronic device. For some devices, this could be done by going into the device's service menu. Other devices may require a complete re-installation of the software. The following section lists a few common electronic devices and how they can be factory reset.
  
  Computer factory resets will restore the computer to the computer's original operating system and delete all of the user data stored on the computer. Microsoft's Windows 8 and Windows 10, and Apple's macOS have options for this.
   "Intel Boot Guard" is a processor feature that prevents the computer from running firmware images not released by the system manufacturer. When turned on, the processors verifies a signature contained in the firmware image before executing it, using the hash of the public half of the signing key, which is fused into the system's Platform Controller Hub (PCH) by the system manufacturer (not by Intel). Intel Boot Guard is an optional processor feature, meaning that it does not need to be activated during the system manufacturing. As a result, Intel Boot Guard, when activated, makes it impossible for end users to install replacement firmware such as Coreboot.
   All Powerconnect switches, including the 8100 series, have both bootcode and operational code where you can run older firmware versions on later bootcode. Bootcode is backwards compatible: you can run firmware of a lower version then the boot-code version; when upgrading firmware you do NOT need to upgrade the boot-code unless specifically directed in the release note or by Dell support, but when downgrading you leave the newer boot-code in placebr
   BULLET::::- Consumer products such as networking appliances and satellite television integrated receiver/decoders often use microprocessors which support JTAG, providing an alternate means to reload firmware if the existing bootloader has been corrupted in some manner.
  
  BULLET::::- The PCI bus connector standard contains optional JTAG signals on pins 1-5; PCI Express contains JTAG signals on pins 5-9. A special JTAG card can be used to reflash a corrupt BIOS.
   Alternatively there is bootloader firmware available that the user can load onto the PIC using ICSP. After programming the bootloader onto the PIC, the user can then reprogram the device using RS232 or USB, in conjunction with specialized computer software.
  
  The advantages of a bootloader over ICSP is faster programming speeds, immediate program execution following programming, and the ability to both debug and program using the same cable.
  
  Section::::Device programmers.:Third party.
   Even when the original client PXE firmware has been written by Intel and always provided at no cost as a linkable IA32 object code format module included in their Product Development Kit (PDK), the open source world has produced over the years non-standard derivative projects like gPXE/iPXE offering their own ROMs. While Intel based ROMs have been implementing the client side of the PXE standard for more than 20 year some users were willing to trade extra features for stability and PXE standard conformance.
  
  Section::::Acceptance.
   Puppy's bootloader does not mount hard drives or connect to the network automatically. This ensures that a bug or even unknowingly incompatible software won't corrupt the contents of such devices.
   Section::::Motorola Milestone.:Locked bootloader.
  
  Unlike the DROID, the Milestone has a bootloader that only allows signed firmware to load. This creates difficulties for users who wish to boot custom ROM images not signed by Motorola that have become popular in the Droid modding community. This has caused discontent in the Droid community in markets foreign to the US, with numerous petitions being created. Whether the disabling of custom boot loaders is due to retailer, carrier, manufacturer, or legal restrictions is unknown.
   The practice of replacing the default Android operating system of a device, present in read-only memory (ROM), with a modified version of the OS or a completely different OS is called "ROM flashing". The procedure is generally not supported by device manufacturers, and requires advanced knowledge of OS mechanics. However, recent years have brought many more manufacturers, such as LG, Motorola, OnePlus, Google (but not on devices sold by Verizon), and Sony allowing customers to unlock the bootloader, bypassing secure boot, without the need for exploits. The "custom ROMs" being used may include different features, require less power, or offer other benefits to the user.
   Because the boot loader resides in flash memory, this model may require the use of a JTAG in case of bad flashing which destroyed the boot loader. However, a bad flash will occur under rare scenarios, and rarely, almost never, will you need a JTAG.
  
  Section::::Dreambox models.:DM 5600, DM 5620.
  
  There was a DM 5600 and also a DM 5620 model. The only difference being that the DM 5620 included an Ethernet port.
   Since a factory reset entails deleting all information stored in the device, it is essentially the same concept as reformatting a hard drive. Pre-Installed applications and data on the card's storage card (such as a MicroSD card) will not be erased. A factory reset should be performed with caution, as it effectively destroys all data stored in the unit. Factory resets can fix many chronic performance issues such as freezing and will not remove the device's operating system.
  
  Section::::Examples.
   Furthermore, whatever is stored in the first sector of a floppy diskette, USB device, hard disk or any other "bootable" storage device, is not required to immediately load any bootstrap code for an OS, if ever. The BIOS merely passes control to whatever exists there, as long as the sector meets the very simple qualification of having the boot record signature of 0x55, 0xAA in its last two bytes. This is why it's easy to replace the usual bootstrap code found in an MBR with more complex loaders, even large multi-functional boot managers (programs stored elsewhere on the device which can run without an operating system), allowing users a number of choices in what occurs next. With this kind of freedom, abuse often occurs in the form of boot sector viruses.
   The process of FCTs is entailed by the emulation or simulation of the environment in which a product is expected to operate. This is done so to check, and correct any issues with functionality. The environment involved with FCTs consists of any device that communicates with an DUT, the power supply of said DUT, and any loads needed to make the DUT function correctly.
  
  FCTs uses customer specific connectors, rather than a test point on the PCB.
   Some operating systems, most notably pre-1995 Macintosh systems from Apple, are so closely interwoven with their hardware that it is impossible to natively boot an operating system other than the standard one. This is the opposite extreme of the scenario using switches mentioned above; it is highly inflexible but relatively error-proof and foolproof as long as all hardware is working normally. A common solution in such situations is to design a boot loader that works as a program belonging to the standard OS that hijacks the system and loads the alternative OS. This technique was used by Apple for its A/UX Unix implementation and copied by various freeware operating systems and BeOS Personal Edition 5.
   In 2019 researchers discovered that a manufacturer debugging mode, known as VISA, had an undocumented feature on Intel Platform Controller Hubs, known as chipsets and which are included on most Intel-based motherboards, which made the mode accessible with a normal motherboard. Since the chipset has direct memory access this is problematic, mostly for security reasons.
  
  Section::::Software.
   As a word play, the name "gummiboot" means "inflatable boat" in German, the native language of its initial developers. Despite being developed by two of its employees, Red Hat's Fedora Project does not use gummiboot for booting UEFI systems; instead, it will use efilinux to chainload GRUB.
   Some microcontrollers provide special hardware interfaces which cannot be used to take arbitrary control of a system or directly run code, but instead they allow the insertion of boot code into bootable non-volatile memory (like flash memory) via simple protocols. Then at the manufacturing phase, such interfaces are used to inject boot code (and possibly other code) into non-volatile memory. After system reset, the microcontroller begins to execute code programmed into its non-volatile memory, just like usual processors are using ROMs for booting. Most notably this technique is used by Atmel AVR microcontrollers, and by others as well. In many cases such interfaces are implemented by hardwired logic. In other cases such interfaces could be created by software running in integrated on-chip boot ROM from GPIO pins.
   Boot loaders may face peculiar constraints, especially in size; for instance, on the IBM PC and compatibles, a boot sector should typically work in only 32 KB (later relaxed to 64 KB) of system memory and not use instructions not supported by the original 8088/8086 processors. The first stage of PC boot loaders (FSBL, first-stage boot loader) located on fixed disks and removable drives must fit into the first 446 bytes of the Master Boot Record in order to leave room for the default 64-byte partition table with four partition entries and the two-byte boot signature, which the BIOS requires for a proper boot loader — or even less, when additional features like more than four partition entries (up to 16 with 16 bytes each), a disk signature (6 bytes), a disk timestamp (6 bytes), an Advanced Active Partition (18 bytes) or special multi-boot loaders have to be supported as well in some environments. In floppy and superfloppy Volume Boot Records, up to 59 bytes are occupied for the Extended BIOS Parameter Block on FAT12 and FAT16 volumes since DOS 4.0, whereas the FAT32 EBPB introduced with DOS 7.1 requires even 87 bytes, leaving only 423 bytes for the boot loader when assuming a sector size of 512 bytes. Microsoft boot sectors therefore traditionally imposed certain restrictions on the boot process, for example, the boot file had to be located at a fixed position in the root directory of the file system and stored as consecutive sectors, conditions taken care of by the codice_1 command and slightly relaxed in later versions of DOS. The boot loader was then able to load the first three sectors of the file into memory, which happened to contain another embedded boot loader able to load the remainder of the file into memory. When Microsoft added LBA and FAT32 support, they even switched to a boot loader reaching over "two" physical sectors and using 386 instructions for size reasons. At the same time other vendors managed to squeeze much more functionality into a single boot sector without relaxing the original constraints on only minimal available memory (32 KB) and processor support (8088/8086). For example, DR-DOS boot sectors are able to locate the boot file in the FAT12, FAT16 and FAT32 file system, and load it into memory as a whole via CHS or LBA, even if the file is not stored in a fixed location and in consecutive sectors.
   On many Alpha computer systems – for example, the Digital Personal Workstation – both SRM and ARC could be loaded onto the EEPROM which held the boot firmware. However, on some smaller systems (or large systems which were never intended to boot Windows), only one of the two boot firmware variants could fit onto the EEPROM at one time. For example, the flash EEPROM of certain models of the DEC Multia, which was a small, personal Alpha AXP workstation designed to run Windows NT, was only large enough to hold a single firmware.
   High-voltage parallel programming (HVPP) is considered the "final resort" and may be the only way to correct bad fuse settings on an AVR chip.
  
  Section::::Programming interfaces.:Bootloader.
  
  Most AVR models can reserve a bootloader region, 256 bytes to 4 KB, where re-programming code can reside. At reset, the bootloader runs first and does some user-programmed determination whether to re-program or to jump to the main application. The code can re-program through any interface available, or it could read an encrypted binary through an Ethernet adapter like PXE. Atmel has application notes and code pertaining to many bus interfaces.
  
  Section::::Programming interfaces.:ROM.
   BULLET::::- Loadlin is a boot loader that can replace a running DOS or Windows 9x kernel with the Linux kernel at run time. This can be useful in the case of hardware that needs to be switched on via software and for which such configuration programs are proprietary and only available for DOS. This booting method is less necessary nowadays, as Linux has drivers for a multitude of hardware devices, but it has seen some use in mobile devices. Another use case is when the Linux is located on a storage device which is not available to the BIOS for booting: DOS or Windows can load the appropriate drivers to make up for the BIOS limitation and boot Linux from there.
   If Windows is pre-installed on a computer by an original equipment manufacturer (OEM), the operating system is automatically activated without the need for interaction from the user. In this case, the copy of Windows installed does not use the product key listed on the certificate of authenticity, but rather a master product key issued to OEMs called a System Locked Pre-installation (SLP) key. On each boot, Windows confirms the presence of specific information stored in the BIOS by the manufacturer, ensuring the activation only remains valid on that computer, even if the product key is used on another machine.
   All the above-mentioned projects, when they are able to boot/install more than one OS, work under a "Boot Manager - Boot Loader" paradigm. The initial NBP is a Boot Manager able to retrieve its own configuration and deploy a menu of booting options. The user selects a booting option and an OS dependent Boot Loader is downloaded and run in order to continue with the selected specific booting procedure.
  
  Section::::Sibling environments.
  
presuppositions: Bootloaders do not require a factory reset. A computer's bootloader doesn't require a factory reset.
corrections: Bootloaders do require a factory reset. A computer's bootloader does require a factory reset.
raw_presuppositions: Bootloaders do not require a factory reset. A computer's bootloader doesn't require a factory reset.
raw_corrections: Bootloaders do require a factory reset. A computer's bootloader does require a factory reset.