|
|
|
||
Poslední úprava: Mgr. Dina Novotná Obeidová (07.02.2024)
Požadavky znalostí ke státní závěrečné zkoušce společné pro všechny specializace
Matematika
1. Základy diferenciálního a integrálního počtu Posloupnosti reálných čísel a jejich limity. Řady. Reálné funkce jedné reálné proměnné. Derivace a její aplikace. Integrály a jejich aplikace.
2. Algebra a lineární algebra Algebraické struktury. Soustavy lineárních rovnic. Matice. Vektorové prostory. Lineární zobrazení. Skalární součin. Determinanty. Vlastní čísla a vlastní vektory. Positivně semidefinitní a positivně definitní matice.
3. Diskrétní matematika Relace. Ekvivalence a rozkladové třídy. Částečná uspořádání. Funkce. Permutace a jejich základní vlastnosti. Kombinační čísla a vztahy mezi nimi, , binomická věta a její aplikace. Princip inkluze a exkluze. Hallova věta o systému různých reprezentantů a její vztah k párování v bipartitním grafu.
4. Teorie grafů Základní pojmy teorie grafů. Základní příklady grafů. Souvislost grafů, komponenty souvislosti, vzdálenost v grafu. Stromy, jejich vlastnosti, ekvivalentní charakteristiky stromů. Rovinné grafy. Barevnost grafů. Hranová a vrcholová souvislost grafů. Orientované grafy, silná a slabá souvislost. Toky v sítích.
5. Pravděpodobnost a statistika Pravděpodobnostní prostor, náhodné jevy, pravděpodobnost. Náhodné veličiny a jejich rozdělení. Limitní věty. Bodové odhady. Intervalové odhady: metoda založená na aproximaci normálním rozdělením. Testování hypotéz.
6. Logika Syntaxe. Sémantika. Extenze teorií. Dokazatelnost. Věty o kompaktnosti a úplnosti výrokové a predikátové logiky. Rozhodnutelnost.
Informatika
1. Automaty a jazyky Regulární jazyky. Bezkontextové jazyky. Rekurzivně spočetné jazyky. Chomského hierarchie.
2. Algoritmy a datové stuktury Časová složitost algoritmů. Třídy složitosti. Metoda rozděl a panuj. Binarní vyhledávací stromy. Třídění. Grafové algoritmy.
3. Programovací jazyky Koncepty pro abstrakci, zapouzdření a polymorfizmus. Primitivní a objektové typy a jejich reprezentace. Generické typy a funkcionální prvky. Manipulace se zdroji a mechanizmy pro ošetření chyb. Životní cyklus objektů a správa paměti. Vlákna a podpora synchronizace. Implementace základních prvků objektových jazyků. Nativní a interpretovaný běh, řízení překladu a sestavení programu.
4. Architektura počítačů a operačních systémů Základní architektura počítače, reprezentace čísel, dat a programů. Instrukční sada, vazba na prvky vyšších programovacích jazyků. Podpora pro běh operačního systému. Rozhraní periferních zařízení a jejich obsluha. Základní abstrakce, rozhraní a mechanizmy OS pro běh programů, sdílení prostředků a vstup/výstup. Paralelismus, vlákna a rozhraní pro jejich správu, synchronizace vláken. *************************** Studenti specializace Systémové programování budou navíc zkoušeni z těchto tematických okruhů:
1. Architektura počítačů
Výkonnost počítače a~procesoru, metriky a~omezení. Zpracování instrukcí procesorem, paralelismus, predikce a spekulace. Architektura paměťového subsystému, architektura cache. Multi-core a~multi-socket systémy, koherence cache.
2. Operační systémy
Spouštění procesů, dynamicky linkované knihovny, volací konvence. Paralelismus a synchronizace na multiprocesorech. Rozhraní pro synchronizaci. Správa paměti na multiprocesorech, alokátory, garbage collection. Rozhraní pro práci se soubory, paměťově mapované soubory. Interní struktura základních systémů souborů. Princip komunikace mezi periferiemi a operačním systémem.
3. Počítačové sítě
Linková vrstva, adresace v~Ethernetu. Síťová vrstva, adresace v IPv4 a IPv6, statické směrování, NAT. Transportní vrstva, adresace v TCP a UDP, spolehlivost, řízení toku. Aplikační rozhraní a aabstrakce pro síťovou komunikaci. Zabezpečení komunikace, autentizace, šifrování.
4. Překladače a~programovací jazyky
Lexikální analýza. Syntaktická analýza. Sémantická analýza. Mezikód.
5. Návrh a~tvorba software
Principy objektového návrhu. Návrh API, tříd a metod. Návrhové vzory.
|