つまり、コンピュータはプログラムをロードしないと動作できないが、プログラムをロードするプログラムはどうロードするのだ? というパラドックスに着目した呼称である[2]。
こういう洒落た命名(アングロサクソン的ユーモア)は大好きだ。
また、ハインラインが古くからこの言葉をSF作品の中で使っていたのも、さすがに電子技術に造詣の深かった(というか、もともと本職)ハインラインらしくて興味深い。
なお、コンピューターを「コンピュータ」と書くように外来語や専門カタカナ語の末尾の長引き音を略して書くのはIT業界のファッションだ、というのは森マサヒロ(名前の漢字は忘れた)の小説の中で知った雑学である。字数の節約になるので、最近は私もそう書いているが、以前はこの書き方が大嫌いだった。「筆は一本、箸は二本」世の流れには、衆寡敵せず、である。
(以下引用)
ブート(英: boot)または ブートストラップ(英: bootstrap)は、コンピュータシステムの電源投入時、あるいはシステムのリセット後、モニタやOSなどなんらかの基本的なシステムソフトウェアを主記憶に展開し、ユーザプログラムを実行できるようにするまでの処理の流れをいう。ブートローダ(英: boot loader)は、以上のプロセスで使われるローダ、すなわち、不揮発性の補助記憶にある目的のプログラムを読出し、揮発性の主記憶に書込むプログラムのことである。
電源投入時のブートのことを「コールドブート」、リセットされたことによるブートを「ウォームブート」と言う。ウォームブートでは、コールドブートにおける最初のほうの手続きのいくつかが必要無い場合もあり、そういった手続きを省略することもある。
ブートストラップまたはブートストラップローダ(英: bootstrap loader)という名前は、ブーツのつまみ革(英: strap)を自分で引っ張って自分を持ち上げようとするイメージから来ている[1]。つまり、コンピュータはプログラムをロードしないと動作できないが、プログラムをロードするプログラムはどうロードするのだ? というパラドックスに着目した呼称である[2]。
歴史編集
初期のENIACではスイッチ群とプラグボードを使い、人手でプログラムを入力していた(正確に言えば配線を変えていた)。といったような説明から始める者もいるが、そもそもENIACはプログラム内蔵方式ではなく、プラグボードによる配線そのものがプログラミングであるので、この話のスコープ外である。
プログラム内蔵方式のコンピュータで、主記憶装置が揮発性メモリなら、何らかの処理でプログラムやOSを主記憶にロードすることが必要である。後述のようにIBM 701以降とする主張もある。
(中略)
言葉の歴史としては、自分自身で自分のための土台を用意する、といったような意味では、電子回路の分野にもブートストラップという手法がある。またロバート・A・ハインラインの1941年の小説By His Bootstraps(邦題「時の門」)でも、そのような意味でブートストラップという語を使っている。