Od 50. let minulého století se značně proměnil svět výpočetní techniky, nejen z
pohledu hardware, ale i software. Umíme nacházet prvočísla velkých hodnot, máme
neprolomitelné šifry, dokázali jsme dostat počítače z vlastnictví velkých
korporací do rukou jednotlivců.
Za každým objevem stojí geniální člověk nebo skupina lidí. Někteří
z těchto lidí se rozhodli udělat pro společnost více, dali se cestou edukování
veřejnosti. Jejich přednášky, názory a výroky formují postoje celé veřejnosti a
tím i budoucí posun lidstva správným směrem.
Některé pro mě nejdůležitější osobnosti tu chci zmínit. Byli i mojí inspirací,
pomohli mi definovat, co je důležité, co méně a odkaz jejich myšlenek se promítá
i do mojí práce jako správce, programátora, občana a uživatele jejich
technologie, kterou vytvořili.
Richard Stallman
Richard Stallman s maskoty svobodného
softwaru (tučňák a pakůň)
Jeho přínosem bylo vytvoření svobodné verze UNIXu jménem GNU
(Gnu is Not Unix). GNU projekt začal v září 1983, jak jsem už zmiňoval v
historickém článku.
Richard Stallman založil také organizaci Free Software Foundation,
která propagovala softwarovou licenci GPL. Licence GPL vlastně znamená
svobodný software (free software). Svobodný software není nutně software
zdarma, i když také může být. Je to chování k programu způsobem, který byl běžný
v době, kdy se software šířil volně mezi uživateli a vznikaly jeho modifikace a
vylepšení a každý mohl zkoumat, jak program funguje čtením zdrojových kódů.
GPL licence říká, že software má autor dodat i s jeho zdrojovými kódy a
nebránit příjemci se o software podělit s někým dalším. Je v zájmu uživatele
programu, aby ho měl právě v této licenci, jelikož si může zkontrolovat, jestli
nedochází ke špehování, úniku dat, obtěžování uživatele, hackování
či nějaké nepožadované funkcionalitě. Licence nepřímo i snižuje cenu softwaru,
protože můžete požádat někoho jiného, aby vám program vylepšil nebo ho
spravoval, když původní autor už třeba není k dispozici. Je tu ještě jedna
výhoda GPL licence, ten kdo upraví zdrojový kód, který jste třeba jako zákazník
dali třetí osobě, tak i ona vám pak k tomuto programu musí dát zdrojový kód.
Zdá se to jako samozřejmost ve světě Linuxu, ale ve světě korporací to nabývá
pravého významu.
Dnes nemusíme lidi učit pouhou myšlenku svobody tisku, svobodných voleb,
svobodného sdružování, svobodu cestovat. V oblasti software je třeba
vysvětlovat, co to znamená používat software a počítač ve smyslu svobody,
protože stále je to jen několik desítek let od doby, kdy se počítače začaly ve
velkém množství používat. Tyto zásady definoval právě GNU projekt pod vedením
Richarda Stallmana.
Brian Kernighan
Jestliže Richard Stallman je zodpovědný za vytvoření systému, který není UNIX,
tak Brian Kernighan je spojený právě s tvůrci onoho slavného UNIXu ve Bellových
laboratoří.
Brian Kernighan působil v Bell labs jako stážista od roku
1967 až do roku
2000.
Dnes stále učí na své alma mater, Princeton University. Cením si ho jednak pro
jeho publikace knih o Unixu a jazyku C, ve kterém Unix byl napsán. Je stále
aktivní, dělá rozhovory a může nám velmi dobře přiblížit dobu vzniku operačního
systému pro mainframe.
Unix je operační systém pro sdílení času.
Sálové počítače v 50. letech neuměly obsluhovat více uživatelů ani více
programů a vzhledem k tomu, že jejich cena byla v milionech dolarů, pro
efektivitu se využívalo dávkové zpracování (batch processing). Dávkové
zpracování řadilo programy do dávek za sebou. Program, napsaný například v
Algolu nebo Fortranu, se vyrazil na
děrné štítky.
Každý štítek měl osmdesát
sloupců, jeden sloupec pro jeden znak. Osmdesát znaků býval takový standard pro
jeden řádek programu, ostatně i první IBM PC měl právě 80 znaků na šířku
obrazovky. Vstupní data programu, například parametry, následovaly hned za
programem na samostatných děrných štítkách.
Prvním operační systém, který zpracovával dávkové programy a
zároveň umožňoval sdílení času několika operátorům připojených přes terminál byl
CTSS (Compatible Time-Sharing System) byl použitý na
IBM 709 v roce
1961 a používal se
až do roku 1973.
Druhým známým operačním systémem pro sdílení času byl
Multics, vyvinutý
spoluprací Bell labs, MIT a General Electric roku
1964. IBM v té době vydala svůj sálový
počítač System/360 se systémem OS/360, který byl jednoznačně úspěšnější.
Ken Thompson vytvořil jádro operačního systému UNIX a k němu několik aplikací
jako editor ed, překladač jazyka C a mnoho dalšího v roce 1971.
Návrh systému byl tak dobrý, že ukázal jaké vlastnosti má mít tehdejší operační
systém:
- hierarchický systém souborů (CTSS byl jednoúrovňový, bez vnořených adresářů)
- OS napsaný ve vysokoúrovňovém jazyku, kterým C bylo
- programovatelný shell - Borne shell od verze Version 7 Unix
- pipes - předávání vstupu a výstupu programu dalším programům
- regulární výrazy - ideální pro zpracování textu
- text jako hlavní datový vstup
- Byl to jeden z prvních přenositelných OS na jiné počítače, aniž by se musel
přepisovat
Brian Kernighan napsal knihu C Programming Language roku
1978. Jazyk C navazuje na několik
předchozích jazyků a zavádí jednoduchost a zároveň generuje dostatečně
efektivní strojový kód. Na tuto první knihu o jazyku C se můžete podívat
v sekci Literatura
na těchto stránkách.