28
Beginner
Project guide
A Brief History of BootstrappingThe word ‘Bootloader’ is a contraction of ‘bootstrap loader’. This is derived from the idea of ‘pulling yourself up by your bootstraps’. A computer without a program to run is a useless piece of machinery. So how do you get the program into the computer?
Switches and Patch-CablesIn the early days of computing, computers were programmed literally bit-by-bit using patch cables or an array of toggle switches on the front panel. As you might imagine, this is quite tedious to do for anything more than a trivial program.
Eniac Computer - US Army Photo - Public Domain
Punch-Cards and Paper TapeOne day, someone had a bright idea: Write a small program that knows how to load larger programs stored on punched cards or paper-tape. And the computer bootstrap loader was born.
NASA Photo - Public Domain
Programmable Read Only MemoryAlthough the bootstrap program saved lots of time, it was still rather tedious to have to toggle in the instructions every time you restarted the machine. Eventually, another engineer had another bright idea: Build the bootloader into the computer.
You could solder an array of diodes to program the 1’s and 0’s of the bootloader code at the required memory addresses to create a Read-Only Memory (ROM) for the bootloader. And the ROM boot was born.
PDP-11 Diode Matrix ROM - Photo by Dave Fischer
EPROM, EEPROM and FlashMoving on from the hard-wired diode boot, advanced in technology led to various forms of electrically programmable non-volatile memories.
These days, bootloaders are programmed into EEPROM or Flash memory. So you don’t need a soldering iron to modify or repair your bootloader. For more complex systems, bootloading may be performed in multiple stages with each stage loading a more complex piece of software.
Intel EPROM - Photo by Jakub Šerých - public domain
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons)
Bootstraps for the BootstrapsYour notebook or desktop computer most likely has at least two stages of bootstraps. The BIOS or UEFI is burned into flash memory on the motherboard. At startup it will look for a bootable drive and load an operating system bootloader from the drive. At that point it turns control over to the operating system’s bootloader which takes care of loading your operating system. Once the operating system is up and running, you can just point and click to load and run any program you want.
Page last edited March 08, 2024
Text editor powered by tinymce.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4