- Úvod do jazyka C/C++ - základní konstrukce, ukazatele a ukazatelová aritmetika, komplexní datové struktury, ukazatele na funkce, dekompozice
- Architektura počítače
- CPU - instrukční sada, registry, zásobník procesoru
- Paměť - adresování, data v paměti, zarovnání, paměťová hierarchie, cache, alokační algoritmy
- Programovací jazyky - překlad a sestavení programu, paměť procedurálního programu, mechanismus volání funkce/procedury, předávání parametrů, druhy a životnost proměnných, zásobník při běhu procedurálních programů, heap, runtime, koncepty JIT a sandboxu, knihovny, přenositelnost na úrovni zdrojového kódu
- Operační systémy - uživatelský režim/režim jádra, architektury OS, přerušení, výjimky, DMA, proces, vlákno, plánování, souborové systémy, virtuální paměť
- Paralelní programování - synchronizace, deadlock
Kurz navazující na předmět Principy počítačů je základním kamenem pro pochopení funkce počítačů, překladačů a operačních systémů. Dovednosti a znalosti získané na tomto kurzu jsou nezbytné pro absolvování dalších předmětů.
Nedílnou součástí kurzu jsou praktická cvičení na vhodně vybraném jednoduchém hardware či v emulovaném prostředí.