Od registrů po cloud: Hierarchie, Fragmentace a Virtualizace
Úvod: Proč počítač zapomíná?
Rozdíl mezi pamětí a úložištěm
Cíl lekce: Pochopit paměťovou hierarchii. Proč nemáme jen jeden typ paměti? Proč potřebujeme RAM i Disk?
Motivace: Žák psal hodinu esej. Vypadla elektřina. Po zapnutí je esej pryč. Kde ta data byla? Proč zmizela?
Klíčový pojem: Volatilita (Závislost na napájení).
🗣️ Icebreaker (5 min):
Zeptejte se studentů, jestli vědí, co je to "paměť zlaté rybky". Počítač je bez proudu jako zlatá rybka. Zapomene všechno, co není fyzicky vyryto do disku. Diskutujte o tom, jaký je rozdíl mezi "Mám to v hlavě" (RAM) a "Mám to napsané v sešitě" (Disk).
Fyzikální zákon IT: "Rychlé je drahé"
Pyramida paměťové hierarchie
Procesor (CPU) je neuvěřitelně rychlý. Disk je neuvěřitelně pomalý. Kdyby CPU čekal na disk, umřel by nudou.
Vrstva
Velikost
Rychlost
Cena za 1 GB
Registry (v CPU)
< 1 KB
Okamžitě (0.3 ns)
Extrémní
Cache (L1/L2/L3)
MB
Nanosekundy (1-10 ns)
Vysoká
RAM (Operační)
GB
Desítky ns (100 ns)
Střední
SSD Disk
TB
Mikrosekundy (100 µs)
Nízká
HDD / Cloud
PB
Milisekundy (10 ms)
Nejnižší
🗣️ Analogie (10 min):
Představte si 1 nanosekundu jako 1 vteřinu.
Registry = Sáhnu si do kapsy (1 s).
RAM = Jdu do vedlejší místnosti (4 minuty).
SSD = Jdu pěšky přes celé město (4 dny).
HDD (Disk) = Letím na Mars (roky).
*Proto potřebujeme hierarchii.*
Didaktická Analogie: Kuchař v kuchyni
Jak to vysvětlit dětem?
Kuchař = Procesor (CPU). Ten, kdo pracuje.
Prkénko = Registry/Cache. To, co má přímo pod rukama. Vejde se tam jen jedna cibule.
Kuchyňská linka/Stůl = RAM. Rozložené suroviny na vaření. Je to po ruce, ale když vypnete světlo a odejdete, uklízečka to vyhodí (volatilita).
Spíž/Obchod = Pevný disk. Obrovský sklad. Nevypaří se to. Ale trvá dlouho tam dojít.
Otázka pro žáky: "Proč nemáme v počítači jen ten obrovský sklad (Disk)?"
Odpověď: "Zkus krájet cibuli, která je zavřená ve spíži ve vedlejší místnosti. Musíš si ji nejdřív přinést na stůl (načíst do RAM)."
🗣️ Diskuze (5 min):
Tato analogie funguje i pro "Upgrade PC". Když přidáte RAM, zvětšíte stůl. Můžete vařit složitější jídla (mít otevřeno více oken), aniž byste museli běhat do spíže.
Adresování paměti
RAM je tabulka v Excelu
RAM je dlouhá řada buněk. Každá má svou adresu (číslo).
Adresy jsou typicky v šestnáctkové soustavě (např. 0xAF40).
OS musí vědět: "Kde začíná Minecraft?" a "Kde končí Word?".
Pointer (Ukazatel): Proměnná, která neobsahuje hodnotu (např. 5), ale adresu, kde tu hodnotu najdu.
🗣️ Hloubka (5 min):
Zmiňte rozdíl mezi 32-bit a 64-bit systémem. 32-bitový systém umí adresovat maximálně 4 GB RAM (2^32 adres). Proto staré počítače neviděly víc paměti. 64-bit zvládne exabyty.
Správa paměti a Ochrana
Proč si programy nekradou data?
Každý proces si myslí, že má celou paměť pro sebe.
OS + Hardware (MMU) mu přidělí pískoviště.
Segmentation Fault (SegFault): Chyba, která nastane, když se program pokusí sáhnout na adresu, která mu nepatří. OS ho okamžitě "zastřelí".
Bezpečnost: Kdyby ochrana paměti nefungovala, mohl by virus jednoduše číst hesla, která má zrovna otevřená váš prohlížeč v sousední části paměti. Izolace je kritická.
🗣️ Tip (5 min):
Ukažte studentům chybovou hlášku "Program provedl neplatnou operaci a bude ukončen". To je přesně ono. Ochranná ruka OS zasáhla.
Fragmentace paměti
Problém parkoviště
Programy vznikají a zanikají. Zanechávají po sobě díry.
Externí fragmentace: Máme celkem dost volné paměti, ale je rozkouskovaná na malé dílky. Velký program (Autobus) se tam v kuse nevejde.
Interní fragmentace: Přidělíme programu blok 4 KB, ale on využije jen 1 KB. Zbytek je "vzduch", který nemůže nikdo jiný použít.
🗣️ Analogie (5 min):
Představte si parkoviště. Přijedou Smarty, Octavie a Kamiony. Pak Octavie odjedou. Zůstanou mezery. Přijede Kamion. Nevejde se, i když součet volného místa by stačil.
Řešení: Stránkování (Paging)
Rozkrájíme autobus na kousky
Abychom nemuseli hledat souvislé místo, OS používá trik.
Fyzickou paměť (RAM) rozdělí na čtverečky (Rámce / Frames).
Program (Logickou paměť) rozdělí na stejně velké čtverečky (Stránky / Pages).
Tabulka stránek (Page Table): Mapa, která říká: "Stránka 1 je v Rámci 50. Stránka 2 je v Rámci 12."
Výsledek: Program může být v paměti totálně rozházený (fragmentovaný), ale procesoru se tváří, že je hezky pohromadě. OS to na pozadí skládá.
🗣️ Hloubka (10 min):
Kdo to překládá? Hardware zvaný MMU (Memory Management Unit). Při každém přístupu do paměti MMU bleskově koukne do tabulky a přeloží virtuální adresu na fyzickou. Děje se to miliardkrát za sekundu.
Virtuální paměť a Swapování
Když dojde stůl, použijeme podlahu
Co když spustím hru (8 GB), Střih videa (16 GB) a Chrome (4 GB), ale mám jen 16 GB RAM?
Virtuální paměť: OS lže programům. Říká: "Máte k dispozici nekonečno paměti."
Swapování (Odkládání): To, co se nevejde do RAM (nebo se dlouho nepoužívá), OS přesune na Disk (do souboru pagefile.sys nebo swap).
🗣️ Analogie (5 min):
Kuchař má plný stůl. Potřebuje místo na těsto. Vezme mísu se salátem (kterou teď nepotřebuje) a položí ji na zem (Disk). Až ji bude potřebovat, musí se sehnout (což trvá dlouho = zpomalení PC) a prohodit ji zpět na stůl.
Thrashing (Vymlácení)
Počítač se "zbláznil" a jen hrabe na disk
Pokud máte zoufale málo RAM a spustíte příliš mnoho věcí.
OS nedělá nic jiného, než že přesouvá data z RAM na Disk a zpět.
Procesor je vytížen na 100 %, ale užitečná práce je 0 %.
Disk "chrastí" (u starých HDD slyšitelné).
Řešení: Jedině dokoupit více RAM nebo zavřít aplikace. Žádný "čistič RAM" (software) nepomůže, protože fyzika se oklamat nedá.
🗣️ Praxe (5 min):
Ukažte, jak to vypadá ve Správci úloh. Graf paměti je plný a graf disku je na 100 %.
Trvalé úložiště: HDD vs. SSD
Magnetismus vs. Elektrony
Vlastnost
HDD (Hard Disk Drive)
SSD (Solid State Drive)
Princip
Točící se plotny, magnetický zápis. Mechanické raménko.
Čipy (Flash paměť). Žádné pohyblivé části.
Rychlost
Pomalý (čeká se na otočení).
Extrémně rychlý (okamžitý přístup).
Hluk/Odolnost
Vrčí, náchylný na otřesy.
Tichý, odolný.
Cena
Levný (velká kapacita).
Dražší.
🗣️ Fyzika (10 min):
Vysvětlete, proč je HDD pomalý při "náhodném čtení" (hlavička musí fyzicky kmitat sem a tam). SSD přistupuje ke každé buňce stejně rychle. Proto start Windows na SSD trvá 10s a na HDD 2 minuty.
Unplugged aktivita: Hra "Úzké hrdlo"
Simulace paměťové hierarchie
Role a pravidla
CPU (1 žák): Sedí u tabule, počítá příklady.
RAM (1 žák): Stojí 2 metry od CPU. Má v ruce 3 papírky se zadáním.
Disk (1 žák): Stojí na chodbě (daleko). Má v krabici 50 papírků.
Sběrnice (1 žák): Běhá.
Průběh: CPU počítá rychle. Dojde mu zadání (RAM je prázdná). Sběrnice musí běžet na chodbu (Disk). CPU mezitím "kouká do blba" (čeká).
🗣️ Reflexe (10 min):
Třída vidí, že i když je CPU génius, je limitován tím, jak rychle mu "Sběrnice" nosí data z chodby. To je důvod, proč SSD zrychlí starý počítač víc než nový procesor.
Didaktické okénko: Otázky ze třídy
Jak vyvracet mýty
Žák: "Smazal jsem fotky z disku, proč je Fortnite pořád pomalý?"
"Protože jsi uvolnil místo ve skříni (Disk), ale kuchař má stále malý stůl (RAM). Hra se seká, protože se nevejde na stůl, ne proto, že je plná skříň."
Žák: "Proč mám po restartu méně volné RAM?"
"To je dobře! Prázdná RAM je zbytečná RAM. Moderní OS (jako Windows 10/11) si do RAM přednačtou věci, které asi budeš potřebovat (SuperFetch), aby se spouštěly rychleji. Když budeš potřebovat místo pro hru, OS to okamžitě uvolní."
Závěr a shrnutí 3. lekce
Co si pamatovat?
Hierarchie: Rychlé paměti je málo (drahá), pomalé hodně (levná).
RAM (Stůl) vs. Disk (Sklad). Rozlišovat volatilitu.
Virtualizace paměti: OS vytváří iluzi, že paměť je velká a souvislá, i když fyzicky je to "rozbitý ementál".
Upgrade: SSD je nejlepší investice do starého PC.
🗣️ Upoutávka:
Příště se podíváme na Souborové systémy. Jak ten "Skladník" (OS) organizuje věci ve skladu (Disku), aby v těch milionech nul a jedniček našel vaši fotku z dovolené?