Operační systém

Teď už toho víš o počítačích docela dost, že jo. Jak počítače pracují s bity a bajty, jak pracují s čísly, zápornými i desetinnými a jak reprezentují znaky.

Z prvních kapitol už máš zároveň nějakou představu o tom, jakou roli v počítači hraje procesor a ostatní komponenty.

Bare-metal programming

Pokud počítač nemá operační systém tak je to jen kus železa. Procesor čeká na instrukce a pokud žádné instrukce nenajde tak pošle celou tvoji rodinu do koncentráku.

Ale víš co – můžeš klidně bejt ajťák, kterej programuje přímo nad kusem železa. Tomu se říká bare-metal programming v překladu doslova „programování nad holým železem“.

K tomu se pojí i pojem embedded programming které znamená „programování nad vestavěnými zařízeními“ což se vztahuje na různé drobné počítače vestavěné do nějakého zařízení s konkrétním účelem, například bankomaty.

Existují taková mrňavá zařízení jako například raspberri pi nebo Arduino. Toto jsou prostě jenom strašně miniaturní počítače s ARM procesory. Existuje celá komunita ajťáků, kteří se tomu věnují a pokud se ti líbí myšlenka přímého programování nad zařízením tak nejdřív dočti tento návod a pak se zkus podívat na návod jak napsat operační systém pro raspberry pi.

Mé vlastní raspberri pi s přídavným displejem.

Hotový operační systém

Já jsem línej ajťák. Používám odjakživa Windows jak k osobním tak pracovním věcem. Moje práce zahrnuje práci i s nějakým Linuxem. Na telefonu mám Android, což je ve skutečnosti Linux ale jestli se někdy Android pokusí mě nutit do interakcí jako pracuji s Linuxama při práci tak ho vyhodim z okna.

Na macOS jsem nikdy v životě nesáhnul ani mě Apple produkty nikdy nezajímaly a nikdy jsem žádný nevlastnil.

Většina ajťačení kterému se ajťáci věnují je už na úrovni existujícího operačního systému. Bare-metal programming a psaní operačních systémů se věnují jenom nadšenci, lidé co to mají jako koníček nebo studenti co se chtějí něco naučit….a nebo lidé, kteří reálně pracují na operačních systémech jako Windows nebo Linux, které všichni používáme.

Proto v tomto návodu cokoliv, o čem budu dále mluvit, je ve vrstvě operačního systému.

Vrstva operačního systému

Shrnutí

  • Bare-metal programming je praxe psaní softwaru přímo pro fyzické zařízení.
  • Zkusit si napsat vlastní OS pro raspberri pi může být zábava, hraničící s masochismem
  • Většina ajťačení o kterém budu v tomto manuálu mluvit probíhá na existujícím hotovém operačním systému jako Windows, Linux nebo macOS.