Bootstrapping

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 24.27.38.47 (talk) at 23:57, 16 February 2006 (Venture capital and start-up companies). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Jump to navigation Jump to search

Bootstrapping alludes to a German legend about Baron Münchhausen, who was able to lift himself out of a swamp by pulling himself up by his own hair. In later versions he was using his own boot straps to pull himself out of the sea which gave rise to the term bootstrapping.

In computers, this term refers to any process where a simple system activates a more complicated system. It is the problem of starting a certain system without the system already functioning. It seems just as impossible as "pulling oneself up by the bootstraps" which Baron Münchhausen, according to stories, could do. However, solutions, accordingly called bootstrapping, exist; they are processes whereby a complex system emerges by starting simply and, bit by bit, developing more complex capabilities on top of the simpler ones.

Bootstrapping describes different things in several domains.

Computing

The term is believed to have entered computer jargon by way of Heinlein's short story By His Bootstraps.

Bootstrapping is generally considered a longer term for booting, or the process of starting up any computer. "Bootstrap" most commonly refers to the program that actually begins the initialization of the computer's operating system, like GRUB, LILO or NTLDR. Modern personal computers have the ability of using their network interface card (NIC) for bootstrapping, on IA-32(x86) and IA-64(Itanium) this method is implemented by PXE and Etherboot.

Bootstrapping can also refer to the development of successively more complex programming environments. The simplest environment will be, perhaps, a very basic text editor (e.g. ed) and an assembler program. Using these tools, one can write a more complex text editor, and a simple compiler for a higher-level language and so on, until one can have a graphical IDE and an extremely high-level programming language.

For more detail, see booting

Compilers

In compiler design, a bootstrap or bootstrapping compiler is a compiler that is written in the target language that it compiles. Examples include gcc, GHC, OCaml and PL/I.

For more detail, see Bootstrapping (compilers)

Linguistics

Syntactic bootstrapping is the idea that children use syntactic knowledge they have developed to help learn what words mean -- semantics builds on top of syntax.

Physics

In physics, the term "bootstrap" is used for the class of theories that assume that very general consistency criteria are sufficient to determine the whole theory completely. In such theories - typically examples of quantum field theory - it is impossible to divide the objects and concepts to elementary and composite ones.

Biology

The idea of bootstrapping is significant in a number of fields in the biological sciences. The process by which a fertilised ovum develops into an embryo, particularly the way in which the nuclear genome is expressed differently in its various cells as these differentiate, is one example of bootstrapping. The evolution of progressively better adapted organs through natural selection in a lineage of organisms is another. Some biologists, including Graham Cairns-Smith, believe that the origin of life itself may have been a bootstrap process as one or more systems of biological information storage formed the foundation for successor systems that ultimately supplanted them culminating in the emergence of our current DNA-based system. For more details see the articles on embryology, ontogeny and phylogeny and RNA World.

Electronics

The term bootstrap has a number of meanings in electronics.

In classical analog designs, a bootstrap circuit is an arrangement of components used to boost the input impedance of a circuit by using a small amount of positive feedback, usually over two stages. This was often necessary in the early days of bipolar transistors, which inherently have quite a low input impedance. The need for such arrangements has largely been alleviated by the use of modern field effect transistor designs, except when ultra-high input impedances are required. Note that because the feedback is positive, such circuits usually suffer from poor stability and noise performance compared to a circuit that doesn't bootstrap.

Another meaning is in connection with the booting process of a computer or other complex system, where the underlying electronics must arrange for the orderly startup of the CPU and related electronics components. This is done long before the CPU is in a state where it can begin to execute software. Nowadays the bootstrap is coordinated by special integrated circuits that monitor the raw power supply and provide the relevant signals to enable the CPU and other chips accordingly.

In a typical car alternator, a DC field current is required before the device can produce any output. Once running, a small portion of the output is fed back to keep the field alive — this can be seen as a form of bootstrapping. The initial priming current is usually obtained from the vehicle's battery — if the battery is totally flat the alternator won't produce any output voltage to recharge it even if the engine is started (by push starting for example) since it will be unable to bootstrap itself. However, in practice, a battery will usually have enough residual charge to avoid this.

In reference to a regional or national power grid, bootstrapping refers to the process of restarting generating stations and restoring power to the grid after a large-scale power outage or disaster. This is also referred to as cold starting. The process is required for reasons not dissimilar to the automobile case above: many power stations have AC generators which do not contain permanent magnets, and are incapable of starting to produce electricity unless they are fed some from an outside source to energize the coils and produce a magnetic field. Once running, they use their own output power for this purpose and are self-sustaining. Some power plants are designated within the grid as being capable of a cold start (either because they have main generators which contain magnets, or have smaller auxiliary generators which do and which are capable of bringing the main ones up), and these plants are brought on-line first, and their power output directed across the grid to other plants and used to start them. In this way, generating stations across the network can be progressively brought back up.

Statistics

In statistics bootstrapping is a method for estimating the sampling distribution of an estimator by resampling with replacement from the original sample. It is distinguished from the jackknife procedure, used to detect outliers, and cross-validation, whose purpose is to make sure that results are repeatable. There are more complicated bootstraps for sampling without replacement, two-sample problems, regression, time series, hierarchical sampling, and other statistical problems.

For more details see bootstrap resampling. ...

Finance

In finance, bootstrapping refers to the procedure used to calculate the zero coupon yield curve, solving for the maturities where no instruments are available. The method uses interpolation to complete the yield curve, using available zero coupon securities with varying maturities.

It may also mean a company acquiring a competitor with a sole reason of temporarily increasing earnings per share.

Bootstrapping also means starting and operating a business with little or no money or assistance from outside investors.

Venture capital and start-up companies

As defined by Greg Gianforte, CEO, RightNow Technologies in an essay at [1], "bootstrapping" is the act of starting a business with little or no external funding. "Bootstrappers don’t write lengthy business plans, chase deep-pocketed investors, or indulge in overly academic market research exercises. Instead, they focus all of their considerable energy, brainpower, determination and skills on creating a business that can actually succeed in the real world."

Other books by practitioners on Bootstrapping include: "Bootstrap" by Ken Hess. [2] and "Go it Alone" by Bruce Judson [3]. Bootstrapping is not well-studied or understood in Academia. Some academics who study bootstrapping include, Amar Bhide at Columbia [4] and Darius Mahdjoubi [5].

With the decline in Venture Capital for early stage companies since 1999, bootstrapping is on the rise and supported by groups such as the Bootstrap Network. [6]

See also

  • Cellular automaton: discusses simple step-by-step self-referential rules used to create larger patterns.