野うさぎの走り on tumblr
ブートストラップをさらに探していくと、「OSをメモリに呼び出すには、メモリ上にOSが無ければならないというブートストラップ・パラドックス」というような記載を発見。

それを更に追究していくと、「ブートストラップ・パラドックス」という、タイムトラベルの概念に行き着き・・・

Wikipediaによると、作家のロバート・A・ハインラインによる”By His Bootstraps”という作品の名称からとったとのこと。

確かに、よくありますよね~。タイムマシンで未来からきた自分に、タイムマシンの設計図を渡され、それを使ってタイムマシンを作って、過去に遡り、その設計図を過去の自分に渡すという。

その設計図、一体誰が作ったの?という話。

さらにそれを調べていくと、ほら吹き男爵(ミュンヒハウゼン男爵)の話に。

Wikipediaによると、(ミュンヒハウゼンのトリレンマという言葉は)「ミュンヒハウゼンが自分の髪を引っ張りあげることで底なし沼から脱出したエピソードから名づけられた。(中略)上記のエピソードは、版によっては、髪ではなくブーツの紐を引っ張りあげたことになっている。コンピュータやエレクトロニクスのブートストラップという用語はこのエピソードに由来するとされるが、詳細はつまびらかでない」とある。

一体、ブートストラップって何だろう

おもしろいコピペを拾ったので紹介します。

—-ココカラ—-
リブート=電源を切って電源を入れ直すこと

コンピュータは電源を入れると基本プログラムを読み込んで起動するが
昔のコンピュータは基本プログラムを読み込むためには
「基本プログラムを読み込むプログラム」
をオペレーターがコンソールからいちいち手入力するしかなかった。

ドン・キホーテは沼に落ちたときに自分で自分のブーツを引っぱり上げて
沼から脱出したとホラを吹いていたが、そんなことは不可能であって
沼に落ちた人間のブーツは沼に落ちた本人以外が引っ張るしかない。
それと同様に、
「基本プログラムを読み込むプログラム」
はコンピュータ以外の存在(オペレータ)が手入力するしかない。

ということで、この「基本プログラムを読み込むプログラム」のことを
「ブーツを引っぱり上げるプログラム」(ブート・ストラップ・ローダー)と呼んだ。

ここから転じてコンピュータを起動することを「ブートする」と呼ぶようになり、
いったんコンピュータを停止した後に再起動することを「リブートする」と呼ぶようになった。

いやマジで。
—-ココマデ—-

ちなみにブートストラップ(bootstrapping)の一般的な意味は「今あるものだけでなんとかする」です。ブートストラップとは靴のかかとあたりについているタグのようなもののことです。

なるほど~と思いました?

そもそもなぜ立ち上げる時、基本プログラム(OS)を読み込めないのでしょうか。
読み込む・・・つまりメモリにハードディスクからデータを引っ張り上げてくること自体基本プログラムが必要なことなのです。ここで回避不可能なパラドックスが発生する訳です。基本プログラムをメモリにロードするためには、基本プログラムがメモリに存在していなければならない。

このパラドックスをどうやって解決しているのでしょう?
それはブートローダ(ブートストラップローダ)という小さなプログラムを使う方法です。このプログラム単体は基本プログラム自体を読み込む能力はありません。しかし、基本プログラムをロードして起動するための別のプログラムをロードするには十分な機能を持っている。つまりブートローダが別のブートローダを起動し、またそのブートローダがさらに別のブートローダを・・・という風にリレー形式に連携して最終的に基本プログラムを読み込むのです。

面白いですね。この考えは何かに応用できそうです。

unkoer:

この時期足を出してる女の子の肌色のグラデーションがたまらんとです(変態だー)… on Twitpic
highlandvalley:

Twitter / shiyu_2: 今日宝塚行ってきたけどこんな感じでした http://t.c …
makisuke:

20120602184955dc2.jpg

これは阿鼻叫喚になる

makisuke:

20120602184955dc2.jpg

これは阿鼻叫喚になる

月曜日、みたいだろ、、火曜日なんだぜ。
Twitter / coz_hot (via chptr22)
inkknot:

なんだこれ。

なんだこれ。

inkknot:

なんだこれ。

なんだこれ。

おくち くちゅくちゅ もんだみん
sekigan:

東亜重工 装備試験体 | Modified Future | Pinterest
highlandvalley:

Twitter / moitiemoitie: 強いられてる …