A bootstrap is the program that initializes the operating system (OS) during startup. The term bootstrap or bootstrapping originated in the early 1950s. It referred to a bootstrap load button that was used to initiate a hardwired bootstrap program, or smaller program that executed a larger program such as the OS. The term was said to be derived from the expression “pulling yourself up by your own bootstraps,” starting small and loading programs one at a time while each program is “laced” or connected to the next program to be executed in sequence. Bootstrapping is the process of loading a set of instructions when a computer is first turned on or booted. During the startup process, diagnostic tests are performed, such as the power-on self-test (POST), that set or check configurations for devices and implement routine testing for the connection of peripherals, hardware and external memory devices.
The bootloader or bootstrap program is then loaded to initialize the OS. Typical programs that load the OS are:. GNU Grand Unified Bootloader (GRUB): A multiboot specification that allows the user to choose one of several OSs. NT Loader (NTLDR): A bootloader for Microsoft’s Windows NT OS that usually runs from the hard drive. Linux Loader (LILO): A bootloader for Linux that generally runs from a hard drive or floppy disc.
Network Interface Controller (NIC): Uses a bootloader that supports booting from a network interface such as Etherboot or pre-boot execution environment (PXE) Prior to bootstrapping a computer is said to start with a blank main memory. The bootstrap allows the sequence of programs to load in order to initiate the OS. The OS is the main program that manages all programs that run on a computer and performs tasks such as controlling peripheral devices like a disc drive, managing directories and files, transmitting output signals to a monitor and identifying input signals from a keyboard.
Bootstrap can also refer to preparing early programming environments incrementally to create more complex and user-friendly programming environments. For example, at one time the programming environment might have consisted of an assembler program and a simple text editor. Over time, gradual improvements have led to today's sophisticated object-oriented programming languages and graphical integrated development environments (IDEs).
Installation To install Boost.Build from an official release or a nightly build, as available on the official web site, follow these steps: Unpack the release.
. Unpack the release. On the command line, go to the root of the unpacked tree. Run either. Bootstrap.bat (on Windows), or./bootstrap.sh (on other operating systems).
Run./b2 install -prefix= PREFIX where PREFIX is a directory where you want Boost.Build to be installed. Optionally, add PREFIX/bin to your PATH environment variable. If you are not using a Boost.Build package, but rather the version bundled with the Boost C Libraries, the above commands should be run in the tools/build/v2 directory.
Now that Boost.Build is installed, you can try some of the examples. Copy PREFIX/share/boost-build/examples/hello to a different directory, then change to that directory and run: PREFIX/bin/b2 A simple executable should be built.