Bootování

Přepínače a kabely používané pro program ENIAC (1946)

Existuje mnoho různých metod k dispozici, aby zatížení krátký úvodní program do počítače. Tyto metody sahají od jednoduchého fyzického vstupu po vyměnitelná média, která mohou obsahovat složitější programy.

Pre-integrated-circuit-ROM examplesEdit

Brzy computersEdit

prvních počítačů v letech 1940 a 1950 byl jeden-z-za-druhu inženýrské úsilí, které by mohlo trvat týdny programu a načítání programu byl jedním z mnoha problémů, který musel být vyřešen. Časný počítač, ENIAC, neměl žádný program uložený v paměti, ale byl nastaven pro každý problém konfigurací propojovacích kabelů. Bootstrapping se nevztahoval na ENIAC, jehož hardwarová konfigurace byla připravena k řešení problémů, jakmile bylo použito napájení.

systém EDSAC, druhý počítač uloženého programu, který má být postaven, použil krokové přepínače k přenosu pevného programu do paměti, když bylo stisknuto tlačítko start. Program uložený na tomto zařízení, který David Wheeler dokončil koncem roku 1948, načetl další pokyny z děrované pásky a poté je provedl.

První komerční computersEdit

první programovatelné počítače pro obchodní prodej, jako UNIVAC i a IBM 701 zahrnuty funkce, aby se jejich provoz jednodušší. Obvykle obsahovaly pokyny, které provedly kompletní vstupní nebo výstupní operaci. Stejná hardwarová logika by mohla být použita k načtení obsahu děrné karty (nejtypičtější) nebo jiných vstupních médií, jako je magnetický buben nebo magnetická páska, která obsahovala bootstrap program stisknutím jediného tlačítka. Toto zavedení konceptu byl nazýván různými názvy pro počítače IBM z roku 1950 a na počátku 1960, ale IBM používá termín „Initial Program Load“ s IBM 7030 Stretch a později použity pro jejich síť linek, počínaje System/360 v roce 1964.

Initial program load děrované karty pro IBM 1130 (1965)

IBM 701 počítač (1952-1956) měl tlačítko „Load“, který inicioval čtení prvních 36-bitová slova do hlavní paměti z děrované karty do čtečky, magnetické pásky do páskové jednotky, nebo magnetický buben, v závislosti na poloze Zatížení přepínače. Levé 18bitové půlslovo bylo poté provedeno jako instrukce, která obvykle čte další slova do paměti. Poté byl spuštěn načtený zaváděcí program, který zase načetl větší program z tohoto média do paměti bez další pomoci lidského operátora. Termín „boot“ se v tomto smyslu používá nejméně od roku 1958.

IBM System/3 konzole z roku 1970. Program zatížení přepínač je nižší vlevo; Program zatížení přepínač je vpravo dole.

jiné počítače IBM té doby měly podobné funkce. Například systém IBM 1401 (c. 1958) použil čtečku karet k načtení programu z děrované karty. 80 znaků uloženy v děrné karty byly číst do paměti místech 001 až 080, pak počítač by větve na paměti 001 přečíst jeho první uložené instrukce. Tato instrukce byla vždy stejná: přesunout informace v těchto prvních 80 paměťových místech do montážní oblasti, kde by informace v děrovaných kartách 2, 3, 4 atd. Jakmile je tato informace byla přesunuta do montážní oblasti, stroj by větev instrukce v umístění 080 (číst karty) a další karta bude číst a jeho údaje zpracovávány.

Další příklad byl IBM 650 (1953), desetinné číslo stroje, který měl skupinu deseti 10-polohy přepínače na jeho ovládacím panelu, které byly adresovatelné paměti slovo (adresa 8000) a mohl by být popraven jako návod. Tedy nastavení přepínače na 7004000400, a stiskněte příslušné tlačítko bude číst první kartu do čtečky paměťových karet do paměti (op kód 70), začíná na adresu, 400 a pak skočit do 400 pro zahájení provádění programu na této kartě.

konkurenti IBM také nabízeli načtení programu jedním tlačítkem.

  • CDC 6600 (c. 1964) měl panel mrtvého startu se 144 přepínači; přepínač mrtvého startu zadal 12 slov z přepínačů do paměti periferního procesoru (PP) 0 a zahájil sekvenci zatížení. PP 0 načte potřebný kód do své vlastní paměti a poté inicializoval další PPs.
  • GE 645 (c. 1965) měl „SYSTÉM BOOTLOAD“ tlačítko, které při stlačení, způsobil jeden z I/O řadiče načíst 64-word program do paměti z dioda pouze pro čtení, paměti a doručit přerušení způsobí, že program začít běhat.
  • první model PDP-10 měl „ČÍST“ tlačítko, které při stisknutí reset procesoru a začal I/O operace na zařízení určeného spínače na ovládacím panelu, čtení v 36-bitové slovo dává cíl, adresa a počítat pro následné slovo čte, při čtení úspěšně absolvováno, procesor začal vykonávající kód přečíst v skokem na poslední slovo číst.

pozoruhodné variace je nalézt na Burroughs B1700, kde neexistuje ani bootstrap ROM ani jediná IPL provoz. Místo toho po resetování systému čte a provádí opcodes postupně z páskové jednotky namontované na předním panelu; tím se nastaví zavaděč v paměti RAM, který se poté provede. Nicméně, protože to dělá několik předpokladů o systému, to může být stejně dobře použit k načtení diagnostikou (Údržba Rutinní Test) pásky, které zobrazují srozumitelné kód na předním panelu a to i v případech hrubého CPU selhání.

IBM System/360 a successorsEdit

V IBM System/360 a jeho nástupci, včetně aktuálního z/Architektura stroje, spouštěcí proces je známý jako Initial Program Load (IPL).

IBM vytvořil tento termín pro 7030 (Stretch), oživil jej pro návrh systému / 360 a nadále jej používá v těchto prostředích dnes. V System/360 procesory, IPL je iniciováno operátor počítače výběrem tři hexadecimální číslice adresy zařízení (CUU; C=I/O adresu Kanálu, UU=Řídicí jednotka a adresa Zařízení) a následně stisknutím tlačítka ZATÍŽENÍ. Na high-end System/360 modelů, většina System/370 a některé pozdější systémy, funkce přepínače a tlačítka ZATÍŽENÍ jsou simulovány pomocí volitelné oblasti na obrazovce grafické konzole, často IBM 2250-jako zařízení, nebo IBM 3270-jako zařízení. Například na modelu System/370 158 vede sekvence klávesnice 0-7-X (nula, sedm a X v tomto pořadí) k IPL z adresy zařízení, která byla zadána do vstupní oblasti. Procesory Amdahl 470V / 6 a související procesory podporovaly čtyři hexadecimální číslice na těch procesorech, které měly nainstalovanou volitelnou jednotku druhého kanálu, celkem 32 kanálů. Později by IBM také podporovala více než 16 kanálů.

IPL funkce v System/360 a jeho nástupci, a jeho kompatibilní jako Amdahlův, čte 24 bajtů od provozovatele specifikované zařízení do hlavní paměti začíná na skutečné řešení žádné. Druhé a třetí skupiny z osmi bajtů se zachází jako Kanál Příkaz Slov (CCWs) pokračovat v načítání při spuštění programu (první CCW je vždy simulován CPU a skládá se z Čtení IPL příkaz, 02h, s příkazem řetězení a potlačit chyby přiřazení nesprávné přípony délka indikace vykonáván). Po dokončení příkazů I / o kanálu se první skupina osmi bajtů načte do stavového slova programu procesoru (PSW) a spouštěcí program začne provádět na místě určeném tímto PSW. IPL zařízení je obvykle disk, proto zvláštní význam 02h číst-typ příkazu, ale přesně stejný postup se používá také k IPL z jiných vstupních zařízení typu, jako jsou pásky, disky, nebo i čtečky karet v zařízení-nezávisle, což umožňuje, například, instalaci operačního systému na zbrusu nový počítač od OS počáteční rozložení magnetické pásky. Pro diskové řadiče, 02h příkaz také způsobí, že vybrané zařízení hledat na válec 0000h, vedoucí 0000h, simulující Hledat válce a hlavy příkazu, 07h, a hledat pro záznam 01h, simulující Vyhledávání ID Rovná příkazu, 31h; hledá a hledá, nejsou simulovány pomocí pásky a karty, řadiče, jak je pro tyto třídy zařízení na příkaz 02h je prostě sekvenční čtení příkaz, ne Číst IPL příkaz.

Na disk, pásku nebo paluba karty musí obsahovat speciální program pro načtení aktuální operační systém nebo samostatný nástroj do hlavní paměti, a pro tento konkrétní účel, „IPL Text“ je umístěn na disku na stand-alone DASDI (Direct Access Storage Device Inicializace) program nebo ekvivalentní program běžící pod operačním systémem, např. ICKDSF, ale IPL-schopen pásky a karty paluby jsou obvykle distribuována s tímto „IPL Text“ již přítomen.

MinicomputersEdit

PDP-8/E přední panel zobrazující přepínače slouží k načtení bootstrap program

Minipočítače, počínaje Digital Equipment Corporation (DEC) PDP-5, PDP-8 (1965) zjednodušený design pomocí CPU pomáhat vstupní a výstupní operace. To ušetřilo náklady, ale bootování bylo komplikovanější než stisknutí jediného tlačítka. Minipočítače obvykle měly nějaký způsob, jak přepínat v krátkých programech manipulací s řadou přepínačů na předním panelu. Od prvních minipočítačů používá magnetické jádro paměti, který neztratil své informace, když bylo napájení vypnuto, tyto bootstrap nakladače by zůstat na místě, pokud byly vymazány. Vymazání se někdy stalo náhodně, když chyba programu způsobila smyčku, která přepsala veškerou paměť.

Další minipočítače s takovou jednoduchý formulář bootování patří Hewlett-Packard HP 2100 series (mid-1960), původní Data General Nova (1969), a DEC PDP-11 (1970).

DEC později přidal volitelnou diodovou matici pouze pro čtení pro PDP-11, která ukládala bootstrap program až 32 slov (64 bajtů). To sestávalo z plošných karty, M792, že je zapojen do Unibus a držel 32 o 16 pole polovodičových diod. Se všemi 512 diodami na místě, paměť obsahovala všechny“ jeden „bity; karta byla naprogramována odříznutím každé diody, jejíž bit měl být „nulový“. DEC také prodával verze karty, řady BM792-Yx, předprogramované pro mnoho standardních vstupních zařízení pouhým vynecháním nepotřebných diod.

po starším přístupu má starší PDP-1 hardwarový zavaděč, takže operátor musí pouze stisknout přepínač „load“, aby nařídil čtečce papírových pásek načíst program přímo do základní paměti. Data General Supernova používá přední panel přepínače způsobit, že počítač automaticky nahrát instrukce do paměti ze zařízení určeného předním panelu datové spínače, a pak skočit do vloženého kódu; Nova 800 a 1200 má přepínač, který nahrál program do hlavní paměti ze speciální read-only memory, a skočil na to.

První minipočítač boot loader examplesEdit

V minipočítač s papírové pásky, čtečky, první program spustit v procesu spouštění, boot loader, by si do základní paměti buď druhá stage boot loader (často nazývá Binární Loader), který by mohl číst papír pásku s checksum nebo operačního systému z externí paměťové médium. Pseudokód pro zavaděč může být stejně jednoduchý jako následujících osm instrukcí:

  1. Nastavit P registru do 9
  2. Zkontrolujte, papírové pásky, čtečky
  3. Pokud není připraven, přejít na 2
  4. Čtení byte z papírové pásky, čtečky akumulátoru
  5. Skladujte akumulátor na adresu v P registru
  6. Pokud je konec pásky, přejít na 9
  7. zvýšení P rejstříku
  8. Přejít na 2

související příklad je založen na loader pro Nicolet Instrument Corporation minipočítač 1970, pomocí papírové pásky, čtečky-děrovací jednotka na Dálnopisu Model 33 ASR dálnopisu. Bajty jeho druhého stupně nakladače jsou čteny z papírové pásky v opačném pořadí.

  1. Nastavit P registru až 106
  2. Zkontrolujte, papírové pásky, čtečky
  3. Pokud není připraven, přejít na 2
  4. Čtení byte z papírové pásky, čtečky akumulátoru
  5. Skladujte akumulátor na adresu v P registru
  6. Snížení P rejstříku
  7. Přejít na 2

délka druhé fáze loader je taková, že poslední bajt přepíše umístění 7. Po provedení instrukce v location 6 spustí location 7 druhý stupeň zavaděče. Zavaděč druhého stupně pak čeká, až bude mnohem delší páska obsahující operační systém umístěna do čtečky pásek. Rozdíl mezi boot loader a druhý stupeň zavaděče je kromě kontroly kódu do pasti papírové pásky chyby čtení, častý výskyt s relativně nízkými náklady, „part-time-duty“ hardware, jako Dálnopisu Model 33 ASR. (Friden Flexowritery byly mnohem spolehlivější, ale také poměrně nákladné.)

Zavedení první microcomputersEdit

prvních mikropočítačů, jako je Altair 8800 (vydáno poprvé v roce 1975) a ještě dříve podobné stroje (založené na CPU Intel 8008) neměl bootstrapping hardware jako takový. Při spuštění CPU uvidí paměť, která by obsahovala spustitelný kód obsahující pouze binární nuly-paměť byla vymazána resetováním při zapnutí. Přední panely těchto strojů nesly přepínače pro zadávání adres a dat, jeden přepínač na bit paměti počítače a adresní sběrnici. Jednoduché dodatky k hardwaru povolené jedno umístění paměti v době, které mají být načteny z těchto přepínačů pro uložení bootstrap kód. Mezitím bylo CPU zabráněno pokusu o spuštění obsahu paměti. Po správném načtení bylo CPU povoleno provádět bootstrapping kód. Tento proces byl zdlouhavý a musel být bezchybný.

Integrovaný obvod read-only memory eraEdit

Intel EPROM 2708 „čip“ na desky plošných spojů.

zaváděcí proces pro minipočítače a mikropočítače byl revoluci zavedením integrovaného obvodu read-only memory (ROM), s jeho mnoha variant, včetně masky-naprogramovaná Rom, programovatelné Rom (PROM), vymazatelné programovatelné Rom (EPROM), a flash paměť. To umožnilo zahrnout spouštěcí programy firmwaru jako součást počítače. Zavedení (externí) ROM byl v italské telefon přepínání elaborator, tzv. „Gruppi Speciali“, patentovaný v roce 1975 Alberto Ciaramella, výzkumník v CSELT. Gruppi Speciali byl, a to od roku 1975, plně single-tlačítko stroj bootování do operačního systému z paměti ROM složeny z polovodičů, a ne z feritových jader. I když ROM není nativně vložený v počítači Gruppi Speciali, vzhledem ke konstrukci stroje, je také umožněno jedním tlačítkem ROM ve stroji, které nejsou určeny pro to (proto to „zaváděcí zařízení“ byla architektura-nezávislý), např. PDP-11. Uložení stavu stroje po vypnutí bylo také na místě, což byla další kritická vlastnost v soutěži o přepínání telefonů.

Typicky, každý mikroprocesor bude, po resetu nebo zapnutí stavu, proveďte start-up proces, který má obvykle podobu „begin provedení kód, který je našel, začínající na konkrétní adresu,“ nebo „podívejte se na vícebajtové kód na konkrétní adresu a skok do určeného umístění pro zahájení exekuce“. Systém postavený pomocí tohoto mikroprocesoru bude mít permanentní ROM zabírající tato speciální místa, takže systém vždy začne fungovat bez pomoci operátora. Například, Intel x86 procesory vždy začít spuštěním instrukce začínající na F000:FFF0, zatímco pro MOS 6502 procesor, inicializace začíná tím, že čte dvou-byte vektor adresu, na $FFFD (MS bajt) a $FFFC (LS byte) a skákání na to místo běžet bootstrap kódu.

Apple Inc.první počítač, Apple 1 představený v roce 1976, představoval prom čipy, které eliminovaly potřebu předního panelu pro spouštěcí proces (jako tomu bylo u Altair 8800) v komerčním počítači. Podle reklamy společnosti Apple, která to oznamuje, “ žádné další přepínače, žádná další světla … firmware v PROMS umožňuje zadávat, zobrazovat a ladit programy (vše v hex) z klávesnice.“

Vzhledem k úkor paměť jen pro čtení v době, Apple II sérii nastartoval jeho disk, operační systémy pomocí řady velmi malých krocích, každým ovládání kupředu do další fáze postupně složitější proces zavádění. (Viz Apple DOS: zavaděč). Protože se tak málo diskového operačního systému spoléhalo na ROM, hardware byl také extrémně flexibilní a podporoval širokou škálu přizpůsobených mechanismů ochrany proti kopírování disku. (Viz Software Cracking: Historie.)

Některé operační systémy, především pre-1995 systémy Macintosh od Apple, jsou tak úzce prolíná s jejich hardware, že to je nemožné, aby nativně boot operačního systému jiné než standardní. Toto je opačný extrém scénáře pomocí výše uvedených přepínačů; je vysoce nepružný, ale relativně odolný proti chybám a spolehlivý, pokud veškerý hardware funguje normálně. Běžným řešením v takových situacích je navrhnout zavaděč, který funguje jako program patřící do standardního operačního systému, který unese systém a načte alternativní operační systém. Tato technika byla použita společností Apple pro implementaci a / UX Unix a kopírována různými freewarovými operačními systémy a BeOS Personal Edition 5.

některé stroje, jako mikropočítač Atari ST, byly „instant-on“, přičemž operační systém byl spuštěn z ROM. Načítání OS ze sekundárního nebo terciárního úložiště bylo tedy vyloučeno jako jedna z charakteristických operací pro bootstrapping. Aby bylo možné automaticky načíst přizpůsobení systému, příslušenství a další podpůrný software, byla disketová jednotka Atari přečtena pro další komponenty během procesu zavádění. Došlo ke zpoždění časového limitu, které poskytlo čas na ruční vložení diskety, když systém hledal další komponenty. Tomu lze zabránit vložením prázdného disku. Atari ST hardware byl také navržen tak, kazety, slot by mohl poskytnout nativní spuštění programu pro herní účely, jako pozůstatek z Atari dědictví výrobu elektronických her; vložením Spectre GCR kazety s Macintosh system ROM ve hře slotu a zapnutí Atari, mohlo by to „nativně boot“ Macintosh operační systém, spíše než Atari vlastní TOS.

IBM Osobní Počítač součástí ROM založené na firmware nazvaný BIOS; jednou z funkcí tohoto firmware byl k provádění power-on self test, kdy byl stroj napájen, a pak číst program ze spouštěcí zařízení a spustit jej. Firmware kompatibilní s BIOSem v osobním počítači IBM se používá v počítačích kompatibilních s IBM PC. Rozšiřitelné rozhraní firmwaru bylo vyvinuto společností Intel, původně pro stroje založené na Itaniu, a později také používáno jako alternativa k BIOSu v strojích založených na x86, včetně Apple Maců využívajících procesory Intel.

unixové pracovní stanice měly původně firmware ROM založený na dodavateli. Sun Microsystems později vyvinul OpenBoot, později známý jako Open Firmware, který zahrnoval Forth interpret, s velkou částí firmwaru, který byl napsán ve Forth. To byl standardizován komisí IEEE jako IEEE standard 1275-1994; firmware, který implementuje že standard byl použit v PowerPC-založené počítače Mac a některé další PowerPC stroje, stejně jako Slunce je vlastní SPARC-založené počítače. Pokročilá výpočetní SPECIFIKACE RISC definovala další standard firmwaru, který byl implementován na některých strojích založených na MIPS a Alfa a na pracovních stanicích založených na SGI Visual Workstation x86.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *