Software
- programové vybavení počítače, vše odlišné od HW (někdy včetně dat)
Dělení
- firmware
- systémový software
- kernel (jádro)
- zajišťuje základní běhové prostředí všem ostatním programům
- pomocné systémové nástroje (např. z Linuxu systemd, shell, udev, atd.)
- programy běžící nad kernelem řídící abstraktnější funkce systému
- aplikační software
- software, který se již nezabývá běhovým prostředím, ale plní úkoly od uživatele
- vývojové nástroje
- grafické programy
- kancelářské programy
- zábavní software
- datové nástroje
Datové soubory
- reprezentace dat uložených ve filesystému
- mají různá metadata
- jméno souboru
- z historických důvodů je na systému Windows řešena přípona souboru zvláštním způsobem, není proto vhodné pojmenovávat soubory bez ní. Ostatní systémy toto nevynucují.
- velikost
- čas vytvoření, čas poslední změny
- práva
- mohou obsahovat naprosto jakákoliv data v digitální podobě
- definice způsobu strukturování a serializování dat do souborů
- popisuje např. způsob, jak ukládat dvourozměrné obrázky do jednorozměrného souboru
- různé kódování
- pro zjednodušení rozpoznávání formátů je možné soubory pojmenovávat s příponou, obvykle je to ale také možné poznat z prvních bytů souboru
- druhy formátů
- textové
- data neobsahují netisknutelné znaky
- HTML, txt
- mediální
- pro zobrazení obsahu je nutné použít programy pro dekódování
- videa, obrázky
- archivy
- více souborů zabaleno do jiného souboru (mohou být komprimované)
- docx, xlsx, ...
- zip, tar, 7z
Distribuce softwaru a zdrojového kódu
- svobodné - public domain, BSD, MIT
- s programy je možné dělat naprosto cokoliv, uživatel není nikterak omezován
- částečně svobodné - GNU GPL
- s programy je možné dělat téměř vše, jen je vynuceno zachování licence při úpravě
- nesvobodné
- demo
- trial
- software s licenčními podmínkami, ve kterých je specifikováno, co uživate smí a nesmí
- nejčastější forma komerčního softwaru
Licencování
- software a zdrojové kódy jsou z pohledu zákona považovány za autorské dílo
- pro používání a nakládání s ním je proto nutné mít od autora licenci
- v licenci si autor nastavuje, co vše může uživatel s jeho softwarem dělat
Ochrana autorských práv
- zajištěna zákony
- ČR - autorský zákon
- USA - DMCA
Operační systémy
- základní částí je kernel
- umožňuje multitasking
- přiděluje zdroje
- poskytuje základní funkce (souborový systém, vstupy a výstupy, ...)
- rozdělení
- microkernel
- stará se o to nejzákladnější, většinu věcí přenechává do userspace
- monolitický kernel
- dělení
- RTOS (real time operating system)
- systémy spravující kritickou infrastrukturu, kde je vyžadovaná garantovaná okamžitá reakce apod.
- běžné OS
- volnější organizace zdrojů
- různé množství uživatelů
Historie OS
Různé existující OS (jádra)
- svobodné
- Linux
- mnoho různých distribucí (sestavení)
- BSD
- GNU Hurd
- ReactOS
- svobodná implementace WinNT a Win32 API
- od Microsoftu