What does the I.T. term “bootstrap” mean?


Definition 1 (transitive verb) of bootstrap:  To turn on a computer so that the operating system is completely functional.  Source:  The fifth definition of "bootstrap" in Dictionary.com is specific to "computers." 

Definition 2 (transitive verb) of bootstrap:  To intentionally initiate multiple subprocesses (especially a primarily automatic sequence of often incremental subprocesses), as in a batch execution, from a single file or action.

Examples of definition 2: 
"Between the advent of handy tools, like Chef and Puppet, and virtual machine infrastructures, like VMWare and AWS, I feel like there has been a great debate about how to bootstrap machines." This quote was taken from Devops.com.

"In the following, I want to highlight how to create an Angular service that bootstraps the application with data defined in an ASP.NET MVC back-end."  This quote was taken from a blog that was up in 2016 (https://blog.mariusschulz.com/2014/03/25/bootstrapping-angularjs-applications-with-server-%20side-data-from-aspnet-mvc).

Definition 3 (noun) of bootstrap:  A software application for designing websites developed at Twitter.  Source: TechTarget.

Background Commentary and Research Notes of The I.T. Term "bootstrap" and "bootstrapping"

  • It could denote the process of turning on a server.  It would connote the details of booting a server involving the initiation of a self-sustaining process from the time it power is turned on until the server begins to function. (1) Relevantly, the bootstrap loader (which is executable code) of a server is stored in the MBR. (2)  The bootstrap loader loads the operating system during power up (and puts the kernel into memory according to page 1240 of A Practical Guide to Fedora and Red Hat Enterprise Linux by Mark Sobell).  According to Techopedia a bootstrap loader is a synonym for boot loader or boot manager.  Therefore one definition of the verbal phrase "to bootstrap a server" is "to turn on a server with a properly configured operating system."  You can power on servers with no hard drives.  The POST and BIOS will go through their processes.  The server will not function properly because it cannot boot without an operating system
  • A separate definition of "bootstrap a server" would be to "install an application with any necessary dependencies." When an installation process "bootstraps" something else it initiates on an as-needed basis a dependency-filling subprocess.  However it would be less likely that you would semantically "bootstrap a server" with this alternate definition and more likely that you would observe or run an .exe file that bootstraps an application installation.  To see an example of this separate definition of "bootstrapping" view this link from Microsoft that is for installing Office 2000.
  • In the past tense or as a adjective describing a server, "a bootstrapped server" could refer to a self-configured or automatically configured server. (3)  
  • Bootstrap can mean to configure a server to participate as a node in a cluster (e.g., a Consul cluster). (4)
  • To bootstrap a server in Chef is to make it a Chef client via installation and configuration of relevant media. (5)
  • For web applications there is a bootstrapping process.  This refers to a main file being a central point for joining together other files, initiating dynamic content (e.g., RSS feeds) connections and with other technologies (e.g., CSS). A definition from another source is 'In the context of PHP development, it also means funneling all web requests through a single script that performs the bootstrapping process, also called "front controller."'  To see an example of the term "bootstrapping" (in the context of web technologies) that can itself be manual or automatic in the context of AngularJS view this old link (https://blog.mariusschulz.com/2014/10/22/asynchronously-bootstrapping-angularjs-applications-%20with-server-side-data) or read this StackOverflow answer.  
  • "Bootstrapping" even in strictly I.T. vernacular has multiple definitions.  For further reading, you may want to see this link.

Leave a comment

Your email address will not be published. Required fields are marked *