In the general sense, "bootstrapping" is a process through which a complex system is set up using a much simpler system. A bootstrap system (the simpler system) is in itself inherently incomplete.
Bootstrapping an OS ("booting it") includes getting the BIOS (or equivalent) to run a simple program that is sometimes located on a fixed location on disk, which in turn starts more complex initialization routines (see first and second stage bootloaders).
Bootstrapping a compiler is done by compiling a simple compiler that can handle a subset of a language in which the full compiler is written in, possibly in several successive steps.
The term is also used in business and in other fields to describe the use of intermediate stages of investment/development needed to initiate later stages of increasing complexity and/or size.
From the Wikipedia article on Bootstrapping:
Tall boots may have a tab, loop or handle at the top known as a bootstrap, allowing one to use fingers or a boot hook tool to help pulling the boots on. The saying "to pull oneself up by one's bootstraps" was already in use during the 19th century as an example of an impossible task.