Thompsonova skořápka - Thompson shell
Původní autoři | Ken Thompson |
---|---|
Vývojáři | AT&T Bell Laboratories |
První vydání | 3. listopadu 1971 |
Operační systém | Unix a Unixový |
Typ | Unix shell |
The Thompsonova skořápka je první Unix shell, představený v první verzi Unix v roce 1971, a napsal ji Ken Thompson.[1]Byl to jednoduchý tlumočník příkazů, který nebyl navržen pro skriptování, ale přesto do něj přinesl několik inovativních funkcí rozhraní příkazového řádku a vedlo k vývoji pozdějších unixových granátů.
Dějiny
Název „shell“ pro a tlumočník příkazového řádku a koncept vytvoření shellu uživatelským programem mimo operační systém jádro byly představeny v předchůdci Unixu Multics.
Prvním rysem skořápky Thompson byla kompaktní syntaxe pro přesměrování vstupu / výstupu. V Multics vyžadovalo přesměrování vstupu nebo výstupu příkazu samostatné příkazy pro spuštění a zastavení přesměrování; v Unixu lze jednoduše přidat do příkazového řádku argument skládající se ze symbolu
Pozdějším přírůstkem byl koncept potrubí. Na návrh Douglas McIlroy, byla syntaxe přesměrování rozšířena tak, aby výstup jednoho příkazu mohl být předán vstupu jiného příkazu. Původní syntaxe kanálu, jak je popsána v příručce verze 3, byla:
příkaz1> příkaz2>
Tato syntaxe se ukázala jako příliš nejednoznačná a snadno ji bylo možné zaměnit za přesměrování do a ze souborů - systém nedokáže zjistit, zda „command2“ je příkaz „command2“ nebo soubor „command2“. Ve verzi 4 se syntaxe změnila tak, aby používala | | a ^ symboly k označení potrubí:
příkaz1 | příkaz2
Výsledkem je přesně stejný výsledek jako:
příkaz1 ^ příkaz2
Symbol> se změnil na:
příkaz1> soubor1
Tím by se výstup příkazu1 dostal do souboru1.
Syntaxe shellu Thompson pro přesměrování s a propojení s | se ukázala jako odolná a byla přijata většinou ostatních unixových skořápek a příkazových skořápek několika dalších operačních systémů, zejména na DOS, OS / 2 a Microsoft Windows.
Odmítnout a nahradit
Design pláště byl záměrně minimalistický; dokonce -li a jít do příkazy, nezbytné pro řízení toku programu, byly implementovány jako samostatné příkazy.[1]Výsledkem je vydání z roku 1975 Verze 6 Unix, bylo jasné, že skořápka Thompsona byla pro nejzávažnější programovací úkoly nedostatečná.
V tuto chvíli vývojáři Programátorský pracovní stůl UNIX distribuce, nejvíce pozoruhodně John Mashey, začal upravovat skořepinu Thompson, aby byla vhodnější pro programování.[1]Výsledek, známý jako PWB skořápka nebo skořápka Mashey, obsahovala pokročilejší mechanismy řízení toku a zavedla proměnné skořápky, ale zůstala omezena nutností zůstat kompatibilní s skořepinou Thompson.
Nakonec byl Thompsonův shell nahrazen jako hlavní unixový shell Bourneova skořápka v Verze 7 Unix a C shell v 2BSD, obě vydány v roce 1979. Protože prakticky všechny moderní Unix a Unixový systémy pocházejí z V7 a 2BSD, prostředí Thompson se obecně již nepoužívá. Je však k dispozici jako open-source jako součást několika Starověký Unix zdrojových distribucí a byl přenesen do moderních Unices jako historická expozice.
Viz také
Reference
- ^ A b C J. R. Mashey (1976-10-13). "Použití příkazového jazyka jako programovacího jazyka na vysoké úrovni". Sborník z 2. mezinárodní konference o softwarovém inženýrství: 169–176. Citovat deník vyžaduje
| deník =
(Pomoc)
externí odkazy
- Manuální stránka prostředí Thompson v Unixu 1. vydání.
- Vývoj unixového systému sdílení času - popisuje časný vývoj shellu
- Počátky skořápky Bourne - manuální stránky pro 3., 4. a 6. vydání skořápky Thompson a další zdroje na prvních skořápkách
- Šesté vydání Thompson Shell Port - prostředí Thompson a související nástroje přenesené do moderních systémů Unix