ブート
IBMのメインフレームではこれを "Initial Program Load" と称している。Load Card、Load Tape、Load Drum などと表示されたボタンを押下するとハードウェアの論理回路が対応する周辺機器からブートプログラムを読み込み、それを実行する。するとブートプログラムがより大きなプログラムを自動的にロードする。「ブート」という言葉は1958年からこの意味で使われている。
言葉の歴史としては、自分自身で自分のための土台を用意する、といったような意味では、電子回路の分野にもブートストラップという手法がある。またロバート・A・ハインラインの1941年の中篇SFの題By His Bootstrapsも、そのような意味でブートストラップという語を使っている。
DEC PDP-8 以降のミニコンピュータでは、フロントパネルにあるスイッチ群を操作して短いプログラムを入力する方法が採用された。初期のミニコンピュータは磁気コアメモリを使っており、電源を切っても情報は失われない。従ってブートローダーは消去されない限りメモリ上に存在し続けるが、バグのあるプログラムを実行して全メモリの内容を上書きしてしまうこともある。PDP-11でも同様の手法を採用したが、後にDECはオプションで32ワード(64バイト)のブートプログラムを格納したROMを追加できるようにした。このROMは集積回路ではなく、M792というUnibus用カードであり、32×16のダイオードアレイで回路を構成している。ダイオードが通電する部分のビットは1になり、通電しないようダイオードを除くと対応するビットが0になる。DECは様々な周辺機器からのブートに対応するため、同様のカードを BM792-Yx シリーズとして販売した。
初期の電子計算機のひとつであるENIACは、いわゆるノイマン型コンピュータではなく、プログラムはパッチボードを利用した配線によっておこなわれ、また解決したい問題の計算式の初期値などを最初から設定して計算を行うような計算機であった。
ノイマン型として実用的に稼働したとされる初期のコンピュータのEDSAC(1949年稼働)では、イニシャルオーダ (英: initial orders) と呼ばれたプログラムが、ロータリースイッチで実現された一種のROMからハードウェア的に主記憶に書き込まれる。イニシャルオーダは非常に技巧的なわずか数十語のコードで単純ながらアセンブラ的機能を実現しており、紙テープを読み込んでそれを機械語に変換し主記憶の残りの部分に書き込む(英語版WikipediaのEDSAC#System_softwareを参照)。EDSACのプログラム技法は成書「The Preparation of Programs for an Electronic Digital Computer」として広まり、パラメトロンコンピュータPC-1他のイニシャルオーダ (イニシャルインプットルーチンとも) がEDSACのイニシャルオーダの影響を受けて作成された。
EDSACの技法は成書として公刊されたため、同様のローダーがこの時代の多くのコンピュータで開発・使用されたが、そのローダをどうロードするか、という点では各種の手法があった。当時はそれらのうちの1つの手法を「ブートストラップ方式」と呼んでいた。ILLIAC Iの方式がブートストラップである。
1950年代の IBM 701 以降、何らかのブート処理でプログラムやOSを主記憶にロードするようになった。
ブートデバイス(英語版)とはオペレーティングシステムをロードする前に初期化しなければならないデバイス(周辺機器)のことである。これには一つの入力機器(キーボード)、ひとつの出力機器(ディスプレイ)、初期プログラムロード用機器(フロッピーディスクドライブ、ハードディスクドライブ、CD-ROM、USBメモリなど)がある。初期プログラムロード (IPL = Initial Program Load) 用機器とは、オペレーティングシステムを格納し、ブート処理でOSをロードするのに使われる機器であり、他にも単独動作するユーティリティ(例えば、memtest86+)やブートローダが格納されている。古いシステムではこれはフロッピーかハードディスクと限定されていた。
最近のPCのBIOSは様々なデバイスからのブートをサポートしており、ローカルのハードディスク(あるいはディスク上のパーティション)、光学ドライブ、USBデバイス(フラッシュドライブ、ハードディスクドライブ、光学ディスクドライブなど)、フラッシュメモリカード、ネットワークカード(PXEを使用)などがある。
そのうち2番目と3番目の8バイトグループがチャネルコマンドワード(CCW)として解釈され、さらに続けてスタートアッププログラムがロードされる。I/Oチャネルコマンドが完了すると、1番目の8バイトグループをステータスレジスタ(PSW)にロードし、指定された位置からスタートアッププログラムの実行を開始する。System/360 やその後継のシステムでは、IPL はハードウェア機能であり、システム上で動作するプログラムではない。事前に定義されたI/Oチャネルコマンドが起動され、デバイスを直接選択し、スタートアッププログラムをメモリ上にロードする。同じプロシージャがディスク装置だけでなく、テープドライブやカードリーダなどからもスタートアッププログラムをロードする。
指定されたデバイスは実際のオペレーティングシステムを主たるストレージからロードする専用プログラムを格納していなければならない。これを "IPL Text" と呼び、ディスクにこれを置くには DASDI (Direct Access Storage Device Initialization) プログラムかそれと等価なプログラムをOS上で実行する。なお、IPL対応の磁気テープやカードデッキは "IPL Text" が存在する状態で配布されている。