Bakalářská státnice - Informatika - Základy informatiky - obor Programování
Súvisiace stránky: Státnice, Základy matematiky, Obecná informatika, Správa počítačových systémů
Obsah
- 1 Základy teoretické informatiky
- 1.1 Logika - jazyk.
- 1.2 Formule.
- 1.3 Sémantika.
- 1.4 Tautologie.
- 1.5 Rozhodnutelnost.
- 1.6 Splnitelnost.
- 1.7 Pravdivost.
- 1.8 Dokazatelnost.
- 1.9 Normální tvary výrokových formulí.
- 1.10 Prenexní tvary formulí predikátové logiky.
- 1.11 Automaty - Chomského hierarchie.
- 1.12 Třídy automatů a gramatik.
- 1.13 Determinismus a nedeterminismus.
- 2 Algoritmy a datové struktury
- 2.1 Základní algoritmy - třídění.
- 2.2 Vyhledávání.
- 2.3 Algoritmy vyhledávání v textu.
- 2.4 Kombinatorické algoritmy.
- 2.5 Grafové algoritmy - nejkratší cesta.
- 2.6 Minimální kostra.
- 2.7 Prohledávání grafů.
- 2.8 Barvení grafů.
- 2.9 Časová a prostorová složitost algoritmů.
- 2.10 NP-úplnost.
- 2.11 Metoda rozděl a panuj.
- 2.12 Lineární struktury.
- 2.13 Stromové struktury.
- 2.14 Haldy.
- 2.15 Hašování.
- 3 Databáze
- 3.1 Podstata a architektury DB systémů. Konceptuální, logická a fyzická úroveň pohledů na data.
- 3.2 Algoritmy návrhu schémat relací.
- 3.3 Normální formy.
- 3.4 Referenční integrita.
- 3.5 Transakční zpracování.
- 3.6 Uzamykací protokoly.
- 3.7 Zablokování.
- 3.8 ER-diagramy.
- 3.9 Metody návrhů IS.
- 3.10 Základy SQL.
- 3.11 Indexy.
- 3.12 Triggery.
- 3.13 Uložené procedury.
- 3.14 Uživatelé.
- 3.15 Uživatelská práva.
- 3.16 Vícevrstevné architektury.
- 3.17 Vazba databází na internetové technologie.
- 4 Programovací jazyky a překladače
- 4.1 Principy a implementace objektově orientovaných jazyků a jazyků s blokovou strukturou.
- 4.2 Běhová podpora vyšších programovacích jazyků.
- 4.3 Oddělený překlad, sestavení, řízení překladu.
- 4.4 Makroprocesory, skriptovací jazyky.
- 4.5 Neprocedurální programování.
- 4.6 Struktura překladače, lexikální, syntaktická analýza.
- 4.7 Interpretované jazyky
- 4.8 Generické programování a knihovny
- 4.9 Návrhové vzory.
- 5 Architektura počítačů a operačních systémů
- 5.1 Architektury počítače
- 5.2 Procesory, multiprocesory
- 5.3 Sběrnice, protokoly
- 5.4 Vstupní a výstupní zařízení
- 5.5 Architektury OS
- 5.6 Vztah OS a HW, obsluha přerušení
- 5.7 Procesy, vlákna, plánování
- 5.8 Synchronizační primitiva, vzájemné vyloučení
- 5.9 Zablokování a zotavení z něj
- 5.10 Organizace paměti, alokační algoritmy. Principy virtuální paměti, stránkování, algoritmy pro výměnu stránek, výpadek stránky, stránkovací tabulky, segmentace
- 5.11 Systémy souborů, adresářové struktury
- 5.12 Plánování pohybu hlav disků
- 5.13 Bezpečnost
- 6 Sítě a internetové technologie
- 6.1 ISO/OSI vrstevnatá architektura
- 6.2 TCP/IP.
- 6.3 Bezpečnost, firewally.
- 6.4 Spojované a nespojované služby, spolehlivost
- 6.5 Modulace, kódování
- 6.6 Topologie sítí
- 6.7 HW a SW technická zařízení pro propojování sítí.
- 6.8 Bezpečnost
- 6.9 Internetové a intranetové protokoly a technologie
- 6.10 značkovací jazyky (XML, HTML)
Základy teoretické informatiky[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
Požadavky:[1]
- Logika
- jazyk, formule, sémantika, tautologie
- Rozhodnutelnost, splnitelnost, pravdivost, dokazatelnost
- Normální tvary výrokových formulí, prenexní tvary formulí predikátové logiky
- Automaty
- Chomského hierarchie
- třídy automatů a gramatik
- determinismus a nedeterminismus
Logika - jazyk.[editovat | editovat zdroj]
- Jazyk VL. (zdroj: Štepánkův slajd 35 z VL0.pdf)
- Jazyk PL. (zdroj: Štepánkův slajd 2 z PL0.pdf)
- Obecné rozdělení symbolů a znaků logiky
Formule.[editovat | editovat zdroj]
- Formule VL. (zdroj: Štepánkův slajd 36 z VL0.pdf)
- Term PL. (zdroj: Štepánkův slajd 4 z PL0.pdf)
- Formule PL. (zdroj: Štepánkův slajd 6 z PL0.pdf)
- Podterm, podformule, volné a vázané proměnné, otevřené a uzavřené formule. (zdroj: Štepánkovy slajdy 8-10 z PL0.pdf)
Sémantika.[editovat | editovat zdroj]
- Pravdivostní ohodnocení preměnných VL. (zdroj: Štepánkův slajd 38 z VL0.pdf)
- Pravdivostní hodnota formule VL. (zdroj: Štepánkův slajd 41 z VL0.pdf)
- Interpretace jazyka PL. (zdroj: Štepánkův slajd 12 z PL0.pdf)
- Ohodnocení proměnných PL. (zdroj: Štepánkův slajd 14 z PL0.pdf)
- Interpretace termu PL. (zdroj: Štepánkův slajd 14 z PL0.pdf)
Tautologie.[editovat | editovat zdroj]
- Pojem tautologie. (zdroj: Štepánkův slajd 43 z VL0.pdf, skripta strana 16)
- Tautologický důsledek. (zdroj: Štepánkův slajd 44 z VL0.pdf)
Rozhodnutelnost.[editovat | editovat zdroj]
- Množina kódů vět teorie. (zdroj: Štepánkův slajd 12 z PL5.pdf)
- Rozhodnutelnost a nerozhodnutelnost. (zdroj: Štepánkův slajd 12 z PL5.pdf)
- Nerozhodnutelnost PL (Church). (zdroj: Štepánkův slajd 6 z PL5.pdf)
Splnitelnost.[editovat | editovat zdroj]
- Splnitelné množiny formulí. (zdroj: Štepánkův slajd 43 z VL0.pdf)
Pravdivost.[editovat | editovat zdroj]
- Pravdivá formule VL. (zdroj: Štepánkův slajd 41 z VL0.pdf)
- Tarskeho definice pravdy. (zdroj: Štepánkovy slajdy 16-18 z PL0.pdf)
- Logicky pravdivá formule PL. (zdroj: Štepánkův slajd 20 z PL0.pdf)
Dokazatelnost.[editovat | editovat zdroj]
- Formální systém VL. (zdroj: Štepánkův slajd 47 z VL0.pdf)
- Schémata axiomů. (zdroj: Štepánkův slajd 50 z VL0.pdf)
- Odvozovací pravidlo (modus ponens). (zdroj: Štepánkův slajd 51 z VL0.pdf)
- Důkaz, dokazatelnost. (zdroj: Štepánkův slajd 52 z VL0.pdf)
- Důkaz, dokazatelnost z předpokladů. (zdroj: Štepánkův slajd 54 z VL0.pdf)
- Věta o dedukci. (zdroj: Štepánkův slajd 55 z VL0.pdf)
- Bezespornost. (zdroj: Štepánkův slajd 72 z VL0.pdf)
- Věta o bezespornosti a splnitelnosti. (zdroj: Štepánkův slajd 81 z VL0.pdf)
- Věty o úplnosti. (zdroj: Štepánkův slajd 86 z VL0.pdf)
- Věta o kompaktnosti VL. (zdroj: Štepánkův slajd 89 z VL0.pdf)
- Axiomy pro kvantifikátory PL. (zdroj: Štepánkův slajd 35 z PL0.pdf)
- (Odvozovací) pravidlo generalizace pro PL. (zdroj: Štepánkův slajd 36 z PL0.pdf)
- Věta o korektnosti. (zdroj: Štepánkův slajd 10 z PL2.pdf)
Normální tvary výrokových formulí.[editovat | editovat zdroj]
- Věta o ekvivalenci. (zdroj: Štepánkův slajd 8 z VL3.pdf) (Jesliže jsou podformule A1..An fle A ekvivalentní s A'1..A'n a A' vytvořím záměnou těchto podformulí, je i A ekvivalentní s A')
- Důkaz rozborem případů. (zdroj: Štepánkův slajd 15 z VL3.pdf) ( T mn. flí a A,B,C fle pak T,(A v B) |- C právě když T,A|-C a T,B|-C )
- CNF a DNF. (zdroj: Štepánkův slajd 20 z VL3.pdf) (klauzule = disjunkce literlů, pak CNF je konjunkce klauzulí a DNF je disjunkce konjunkcí literálů)
- Věta o normálních tvarech. (zdroj: Štepánkův slajd 22 z VL3.pdf) (Ke každé formuli lze sestrojit ekvivalentní formuli v CNF nebo DNF)
Prenexní tvary formulí predikátové logiky.[editovat | editovat zdroj]
- Prenexní tvar formule. (zdroj: Štepánkův slajd 3 z PL1.pdf) (fle, kde jsou všechny kvantifikáory na začátku a zbytek je otevřená formule)
- Věta o prenexních tvarech. (zdroj: Štepánkův slajd 5 z PL1.pdf) (Ke každé fli lze sestrojit fle v prenexním tvaru, která je s ní ekvivalentní)
- Prenexní operace. (zdroj: Štepánkův slajd 7 z PL1.pdf)
Automaty - Chomského hierarchie.[editovat | editovat zdroj]
- Přepisovací (produkční) systém. (zdroj: Bartákův slajd 4 z lecture06.pdf)
- Odvození (derivace). (zdroj: Bartákův slajd 4 z lecture06.pdf)
- Formální (generativní) gramatiky. (zdroj: Bartákův slajd 6 z lecture06.pdf)
- Chomského hierarchie. (zdroj: Bartákův slajd 7 z lecture06.pdf)
- Nevypouštěcí gramatiky a převod na ně. (zdroj: Bartákovy slajdy 9-11 z lecture06.pdf)
Třídy automatů a gramatik.[editovat | editovat zdroj]
- Definice všech 4 tříd gramatik. (zdroje: Bartákův slajd 7 z lecture07.pdf / wikipedie)
- Definice konečného automatu. (zdroje: Bartákův slajd 9 z lecture01.pdf / wikipedie)
- Definice zásobníkového automatu. (zdroje: Bartákův slajd 2 z lecture08.pdf / wikipedie)
- Definice Turingova stroje. (zdroje: Bartákův slajd 4 z lecture11.pdf / wikipedie)
- Převody mezi nimi. (zdroj: wikipedie)
- L0(rekurzivně spočetné jazyky) = turingův stroj
- L1(kontextové jazyky) = lineárně omezený automat (NTS s omezenou páskou)
- L2(bezkontextové jazyky) = nedeterministický zásobníkový automat
- L3(regulární/pravé lineární jazyky) = konečný automat
Determinismus a nedeterminismus.[editovat | editovat zdroj]
- Nedeterministický konečný automat. (zdroje: Bartákův slajd 4 z lecture03.pdf / wikipedie)
- Deterministický zásobníkový automat rozeznává jen deterministické BK jazyky (podmnožina BK jazyků)
- Turingův stroj: DTS = NTS
- Konečný automat: DKA = NKA
Algoritmy a datové struktury[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
Základní algoritmy - třídění.[editovat | editovat zdroj]
- Selection sort. (zdroj: wikipedie)
- Bubble sort. (zdroj: wikipedie)
- Insertion sort. (zdroj: wikipedie)
- Merge sort. (zdroj: wikipedie)
- Heapsort. (zdroj: wikipedie)
- Quicksort. (zdroj: wikipedie)
- Introsort. (zdroj: wikipedie)
- Radix sort. (zdroj: wikipedie)
- Bogosort. (zdroj: wikipedie)
- An evil sort. (zdroj: wikipedie)
Vyhledávání.[editovat | editovat zdroj]
- Lineární vyhledávání. (zdroj: wikipedie)
- Binární vyhledávání. (zdroj: wikipedie)
- Interpolační vyhledávání. (zdroj: wikipedie)
- Hledání k-tého největšího prvku. (zdroj: wikipedie)
Algoritmy vyhledávání v textu.[editovat | editovat zdroj]
- Rabin-Karp. (zdroj: wikipedie)
- Knuth–Morris–Pratt (zdroj: wikipedie)
- Aho-Corasick (zdroj: wikipedie)
Kombinatorické algoritmy.[editovat | editovat zdroj]
- Lineární programování a simplexová metoda. (zdroj: Berkeley)
- Rychlá Fourierova transformace. (zdroj: Berkeley)
Grafové algoritmy - nejkratší cesta.[editovat | editovat zdroj]
- Dijkstrův algoritmus. (zdroj: wikipedie)
- Bellman-Fordův algoritmus. (zdroj: wikipedie)
- Floyd-Warshallův algoritmus. (zdroj: wikipedie)
Minimální kostra.[editovat | editovat zdroj]
- Prim (Jarník, Dijkstra). (zdroj: wikipedie - pozor na pseudo-kód, je tam možná chyba)
- Kruskal. (zdroj: wikipedie)
- Datové struktury. (zdroj: wikipedie)
- Borůvka. (zdroje: Přednášky z Univerzity v Californii / wikipedie)
Prohledávání grafů.[editovat | editovat zdroj]
- Prohledávání do hloubky. (zdroj: wikipedie)
- Informované prohledávání do hloubky - heuristiky. (zdroj: wikipedie)
- Mini-max a spol. (zdroj: stránky o dělání šachu)
- Aplikace DFS. (zdroj: přednáška z VUT v Brně)
- Informované prohledávání do hloubky - heuristiky. (zdroj: wikipedie)
- Prohledávání do šířky. (zdroj: wikipedie)
- Aplikace BFS. (zdroj: přednáška z VUT v Brně)
Barvení grafů.[editovat | editovat zdroj]
- Barvení grafů obecně. (zdroj: wikipedie)
Časová a prostorová složitost algoritmů.[editovat | editovat zdroj]
- Definice algoritmu.
- Časová a prostorová složitost algoritmů. (slidy z VŠB)
- Očková notace. (zdroj: wikipedie)
- Amortizovaná složitost. (zdroje: Čepkovi slajdy Složitost I str.36 / wikipedie)
NP-úplnost.[editovat | editovat zdroj]
Něco málo je popsáno na posledních slajdech na tomto odkazu (Čepek-ADS): [2] A o něco více na (zdroje: Čepkovy slajdy Složitost I od str.48)
Shrnutí složitosti algoritmů na WolframMathWorld
- Složitost problému. (zdroj: wikipedie)
- Definice NP. (zdroj: wikipedie)
- Vztah P a NP. (zdroj: wikipedie)
- NP-těžký problém. (zdroj: wikipedie)
- NP-uplný problém. (zdroj: wikipedie)
- Příklady NP-úplných problémů. (zdroj: wikipedie)
- Nedokonalé řešení NP-úplných problémů. (zdroj: wikipedie)
Metoda rozděl a panuj.[editovat | editovat zdroj]
- Metoda rozděl a panuj. (zdroj: wikipedie)
- Mergesort. (zdroj: wikipedie)
- Quicksort. (zdroj: wikipedie)
- Hanojské věže. (zdroj: wikipedie)
- Master theorem. (zdroj: wikipedie)
- Důkaz master theorem. (zdroj: Univerzita v Indianapolisu)
Lineární struktury.[editovat | editovat zdroj]
- Pole.
- Množina.
- Spojový seznam.
- Dvousměrný spojový seznam.
- Zásobník.
- Oboustranný zásobník.
- Fronta.
- Oboustranná fronta.
- Prioritní fronta.
Stromové struktury.[editovat | editovat zdroj]
- B strom. (wikipedie)
- B+ strom. (wikipedie)
- B* strom. (wikipedie)
- Binární vyhledávací strom. (zdroj: wikipedie)
- AVL strom. (zdroj: wikipedie)
- Červeno-černý strom. (zdroj: wikipedie)
- Intervalový strom.
- Trie (prefixový strom). (zdroj: wikipedie)
- Patricia trie. (zdroj: wikipedie)
- Vícerozměrný strom.
Haldy.[editovat | editovat zdroj]
Hašování.[editovat | editovat zdroj]
(zdroj: Skripta Dat.Struktury - Koubek)
- Hašovací funkce. (zdroj: wikipedie)
- Hašovací tabulka. (zdroj: wikipedie)
- Hašování se separovanými řetězci
- Hašování s uspořádanými řetězci
- Hašování s přemísťováním
- Hašování se dvěma ukazateli
- Srůstající hašování (LISCH, EISCH, LICH, EICH, VICH)
- Hašování s lineárním přidáváním
- Dvojité hašování
- Univerzální hašování
- Perfektní hašování
Databáze[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
Podstata a architektury DB systémů. Konceptuální, logická a fyzická úroveň pohledů na data.[editovat | editovat zdroj]
- Architektura DB systémů. (zdroj: wikipedie, Architektury DB)
- Architektura DB systémů a ostatně vše kolem databází (zdroj: [3])
- Konceptuální, logická a fyzická úroveň pohledů na data. (zdroj: wikipedie)
Algoritmy návrhu schémat relací.[editovat | editovat zdroj]
- Pojmy kolem algoritmů (závislosti, klíče, ...). (zdroj: Univerzita Carlton)
- Algoritmus dekompozice na převod do 3NF. (zdroje: Univerzita Carlton / Houstonská univerzita / Californská státní univerzita)
- Algoritmus syntézy na převod do 3NF.
- Algoritmus na převod do BCNF. (zdroj: Californská státní univerzita).
Normální formy.[editovat | editovat zdroj]
- Přehled normálních forem. (zdroje: Litt's Tips / wikipedie)
- 1NF. (zdroje: Skopalův slajd 13 z DBI025_03.ppt / wikipedie)
- 2NF. (zdroje: Skopalův slajd 16 z DBI025_03.ppt / wikipedie)
- 3NF. (zdroje: Skopalův slajd 18 z DBI025_03.ppt / wikipedie)
- BCNF. (zdroje: Skopalův slajd 21 z DBI025_03.ppt / wikipedie)
Referenční integrita.[editovat | editovat zdroj]
- Referenční integrita. (zdroje: Skopalův slajd 10 z DBI025_07.ppt / wikipedie)
Transakční zpracování.[editovat | editovat zdroj]
- Pojem transakce, ACID. (zdroje: Skopalův slajd 6 z DBI025_09.ppt / wikipedie)
- Commit, rollback (abort). (zdroje: Skopalův slajd 8 z DBI025_09.ppt / wikipedie)
- Savepoint. (zdroj: wikipedie)
- Žurnál. (zdroj: wikipedie)
- Úrovně izolace. (zdroj: wikipedie)
Uzamykací protokoly.[editovat | editovat zdroj]
- Protokoly řízení konfliktů. (zdroj: wikipedie)
- Plán, sériový plán. (zdroj: wikipedie)
- 2-fázové zamykání. (zdroj: wikipedie)
- Striktní 2-fázové zamykání. (zdroj: wikipedie)
- Rigorózní 2-fázové zamykání. (zdroj: wikipedie)
- Konzervativní 2-fázové zamykání. (zdroj: wikipedie)
Zablokování.[editovat | editovat zdroj]
- Deadlock. (zdroj: wikipedie)
- Wait-for grafy. (zdroj: University of Iowa)
- Priorizace transakcí.
- Protokol časových razítek. (zdroj: wikipedie)
- Stromový protokol.
- Multiverzovací protokol. (zdroj: wikipedie)
- Wait-die a wound-wait strategie. (zdroj: Santa Clara University - v kapitole Deadlock Avoidance)
- Optimistické algoritmy. (zdroj: wikipedie)
ER-diagramy.[editovat | editovat zdroj]
- ER-diagramy. (zdroj: wikipedie)
- Entita.
- Vztah.
- Atribut.
- Slabé entitní typy.
- Integritní omezení (kardinality).
- Dědičnost (ISA-vztah).
- Druhy dědičnosti (partial / exclusive, total / overlapping).
Metody návrhů IS.[editovat | editovat zdroj]
- Asi obecné informace o návrhu tabulek.
Základy SQL.[editovat | editovat zdroj]
Indexy.[editovat | editovat zdroj]
- Index. (zdroj: wikipedie).
- Manipulace s indexy v SQL.
Triggery.[editovat | editovat zdroj]
- Trigger. (zdroj: Kopeckého slajdy na Databázové aplikace)
- Manipulace s triggery v SQL.
Uložené procedury.[editovat | editovat zdroj]
- Uložené procedury. (zdroj: wikipedie)
Uživatelé.[editovat | editovat zdroj]
- Manipulace s uživateli. (zdroj: SQL Zoo)
Uživatelská práva.[editovat | editovat zdroj]
Vícevrstevné architektury.[editovat | editovat zdroj]
(zdroj: Slidy VUTBR)
Srovnání architektur: http://www.sei.cmu.edu/str/descriptions/clientserver.html
Vazba databází na internetové technologie.[editovat | editovat zdroj]
- Niesom istý, ale možno tým je myslené niečo takéto (zdroj: fit.vutbr)
Programovací jazyky a překladače[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
Principy a implementace objektově orientovaných jazyků a jazyků s blokovou strukturou.[editovat | editovat zdroj]
Běhová podpora vyšších programovacích jazyků.[editovat | editovat zdroj]
- Statická podpora a dynamická podpora.
- Rozdělení paměti.
- Stav paměti před spuštěním.
- Konstruktory, destruktory globálních proměnných.
- Volací konvence.
Oddělený překlad, sestavení, řízení překladu.[editovat | editovat zdroj]
Makroprocesory, skriptovací jazyky.[editovat | editovat zdroj]
Neprocedurální programování.[editovat | editovat zdroj]
- Neprocedurální, logické a funkcionální programování.
- Prolog.
- Haskell.
- Lisp.
Struktura překladače, lexikální, syntaktická analýza.[editovat | editovat zdroj]
- Lexikální analýza (token, pattern, lexém) (slidy Principy překladačů)
- Pomocí konečného automatu
- Chyba lexikální analýzy nastává když je ukončeno v nepříjmacím stavu (špatný vstup)
- Řešení: ignorovat chybu, domyslet správn správný vstup
- LA zdlouhavá -> Bufferování vstupu
- Pro přenositelnost stačí měnit jen v LA
- výstup - token (=vstup do syntaktické analýzy (=terminál))
- pattern - regulární výraz, popisuje množinu řetězců pro určitý token
- lexém (lexikální element) - odpovídá nějakému patternu nějakého tokenu
- Pomocí konečného automatu
Token | Lexém | regulární výraz |
while | while | while |
relop | <,<=,=,<>,>,>= | \<|\<=|=|\<>|>|>= |
uint | 0, 123 | [0-9]+ |
- Syntaktická analýza.
- Pomocí zásobníkového automatu (BKG)
- Zjišťuje, zda jsou slova na vstupu ze vstupního jazyka
- Staví derivační strom, odstraňuje nejednoznačnosti jazyka (dangling else).
- Sémantická analýza.
- Generování mezikódu.
- Optimalizace mezikódu.
- Generování kódu.
- Obsluha chyb.
- Druhy jazyků (LR(0), LR(1), LR(k), SLR, LALR, GLR, LL(1), LL(k)).
Interpretované jazyky[editovat | editovat zdroj]
(slidy Principy překladačů (9))
- Překlad do kódu abstraktního stroje.
- Abstraktní stroj může běžet na různých OS (=přenositelnost)
- Je to ale pomalejší
- Překlad JIT (Just-in-time)
- Dynamická alokace jen s garbage collectorem
- Dnes typicky Java
Generické programování a knihovny[editovat | editovat zdroj]
- Generické programování (zdroj: wikipedia.cz)
- Šablony (zdroj: slajdy OOP)
- Metaprogramovanie (požiadavka Yaghoba - ukážka na príklade faktoriálu) - strana 12: http://tjn.fjfi.cvut.cz/~virius/prednes/prezen/SabMeta.pdf
Návrhové vzory.[editovat | editovat zdroj]
- Diplomová práce na téma návrhové vzory [6]
Architektura počítačů a operačních systémů[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
Architektury počítače[editovat | editovat zdroj]
Procesory, multiprocesory[editovat | editovat zdroj]
Sběrnice, protokoly[editovat | editovat zdroj]
Vstupní a výstupní zařízení[editovat | editovat zdroj]
Architektury OS[editovat | editovat zdroj]
- ZOS
- Yaghobove slidy
- slidy z Mississippi College
- slidy z University of Alberta
- slidy z University of Nebraska
História OS
Monolitický systém (Linux, windows), virtuálne stroje (Java, AS400), Mikrokernel
Vztah OS a HW, obsluha přerušení[editovat | editovat zdroj]
Druhy prístupu k HW (port CPU, memory-mapped)
Druhy zariadení (blokové / znakové)
Prístup (sekvenčný / náhodný)
Synchrónnosť (disk vs. sieťovka)
Zdieľanie (sieťovka vs. tlačiareň) + spooling
Rýchlosť, smer dát (RO/RW...)
V sw: abstrakcia, jednotné pomenovanie, mount, obsluha chýb
Prerušenie, polling, DMA
Vrstvy I/O (hw -> obsluha prerušenia -> ovládač -> IO subsystém -> userspace IO)
Obsluha prerušenia (uloženie kontextu cpu, potvrdenie radiču, obsluha prerušenia, preplánovanie, obnova kontextu)
Procesy, vlákna, plánování[editovat | editovat zdroj]
Definície, vlastnosti, rozdiely.... (win vs. lin)
Stavy procesu, súvislosť s prerušeniami
Plánovanie ((ne)preemptívne) - ciele, kritériá, priority
Plánovacie algoritmy: FIFO, Round robin, Viacero front so spätnou väzbou; SMP, Realtime; Win. vs Linux
Synchronizační primitiva, vzájemné vyloučení[editovat | editovat zdroj]
Aktívne vs. pasívne čakanie, podmienky;
Aktívne: Petersnove riešenie, TSL
Pasívne: Zámky, monitory, semafory, správy (mutexy)
Obedujúci filozofovia, Problém ospalého holiča
Zablokování a zotavení z něj[editovat | editovat zdroj]
Druhy prostriedkov (odnímateľné? ...), práca s nimi, Coffmanove podmienky,
Riešenie zablokovania: Pštrosí algoritmus, Detekcia a zotavenie, vyhýbanie sa, prevencia
Organizace paměti, alokační algoritmy. Principy virtuální paměti, stránkování, algoritmy pro výměnu stránek, výpadek stránky, stránkovací tabulky, segmentace[editovat | editovat zdroj]
Hierarchia (veľkosť vs. rýchlosť)
Swapping, Preklad adries
Algoritmy prideľovania: first fit, best/worst fit, buddy systém
Virtuálna pamäť, stránkovanie (viacúrovňové)
TLB, (inverzné) stránkovanie, segmenty (stránkovanie+segmenty), použité tabuľky
Výpadky => výmena: Optimálna stránka, NRU, FIFO, druhá šanca, Hodiny, LRU, random [7]
Systémy souborů, adresářové struktury[editovat | editovat zdroj]
Vlastnosti súborov, pomenovanie, štruktúra (lineárne vs. stromy vs. sekvenčné)
Prístup k súborom (sekvenčný, priamy, memory mapping)
Operácie so súbormi (copy, move...)
Adresáre (hierarchia: stromy, DAG, obecný graf)
Alokácia miesta pre súbory
NTFS, INODE, ext2...
Plánování pohybu hlav disků[editovat | editovat zdroj]
FCFS, SSTF, LOOK, CLOOK
RAID (pěkné vysvětlení RAIDů je na [8])
Bezpečnost[editovat | editovat zdroj]
Ceile útokov, útočníci, autentikácia, vnútorné útoky (vírusy, trojany...), kryptografia (hash, crc, šifrovanie)
Sítě a internetové technologie[editovat | editovat zdroj]
Zkompilovaná verze textu ze SVN státnicových otázek (pozor, nemusí být nutně aktuální).
ISO/OSI vrstevnatá architektura[editovat | editovat zdroj]
- Vrstevnatá architektura. (zdroje Jiří Peterka / wikipedie)
- Komunikace mezi vrstvami (zdroje: Jiří Peterka)
- 7 vrstev. (zdroje: Jiří Peterka / wikipedie / MUNI)
TCP/IP.[editovat | editovat zdroj]
- TCP/IP vrstvy. (zdroje: Jiří Peterka / wikipedie)
Bezpečnost, firewally.[editovat | editovat zdroj]
- Útoky.
- Bezpečnost sítí obecně. (zdroj: Jiří Peterka)
- Firewall. (zdroj: wikipedie)
- NAT. (zdroj: wikipedie)
- Filtrování paketů, IDS, IPS. (zdroj: wikipedie)
- DMZ. (wikipedie)
Spojované a nespojované služby, spolehlivost[editovat | editovat zdroj]
- Spojované protokoly. Příklady. (zdroje: University of East London / wikipedie)
- Nespojované protokoly. Příklady. (zdroje: University of East London/ wikipedie / inetdaemon)
- TCP. (zdroj: wikipedie)
- UDP. (zdroj: wikipedie)
- IP. (zdroj: wikipedie)
Modulace, kódování[editovat | editovat zdroj]
Broadband Druhy kódování Manchester kód Modulácia Modulačná rýchlosť Prenosová rýchlosť Šírka pásma Shannonuv teorém
Topologie sítí[editovat | editovat zdroj]
- Sběrnicová topologie. (zdroje: site.the.cz / wikipedie / ewa.cz / markonet.cz)
- Hvězdicová topologie. (zdroje: site.the.cz / wikipedie / wikipedie / ewa.cz / markonet.cz)
- Prstencová topologie. (zdroje: wikipedie / wikipedie / site.the.cz / ewa.cz / markonet.cz)
- Mesh. (zdroj: wikipedie)
- Ethernet. (zdroj: wikipedie)
- Token ring. (zdroj: wikipedie)
HW a SW technická zařízení pro propojování sítí.[editovat | editovat zdroj]
- Síťová karta (NIC, WNIC). (zdroj: wikipedie a wikipedie)
- Opakovač (repeater). (zdroje: FCIT / wikipedie)
- Rozbočovač (switch, starší ekvivalent je hub). (zdroje: FCIT / wikipedie)
- Bridge. (zdroje: FCIT / wikipedie)
- Směrovač (router). (zdroje: FCIT / wikipedie)
- Wireless Access Point (WAP, taky AP). (zdroje: wikipedie / wikipedie)
- Káble.
- Software.
Bezpečnost[editovat | editovat zdroj]
- IPSec (zdroj: earchiv Jiřího Peterky) (Pozor! zdroje od profesora Peterky nejsou dostačující, pokud vás zkouší pan Galamboš!)
FUQS (frenquently unexpected questions) od p. Galambose:
- Jaký port používá IPSEC? - žádný, funguje nad síťovou vrstvou.
- Jak uzel A pošle uzlu B packet, když mezi nima stojí gateways, musí uzel A se nějak domlouvit s gateway, aby gateway zajistila IPSEC? - ne, prostě se gateway pošle natvrdo IPSEC packet a gateway podle hlavičky rozpozná, co má dělat.
- jiný zákeřňáky... doporučuju si přečíst slidy p. Galaboše z jeho stránek!(Soubor bohuzel uz neexistuje,
zajimavy text jsem nasel tady:
An Illustrated Guide to IPsec ) (edit [4.9.2008]: súbor existuje, akurát je nutné ho zťahovať zo strojov v doméne mff.cuni.cz)
- pri googleni som našiel video z prednášky o IPSec(ČVUT 15.11.2003), možno to niekomu uľahčí učenie
- principy fungování AH, ESP
- transport mode
- tunnel mode
- firewall
Internetové a intranetové protokoly a technologie[editovat | editovat zdroj]
- RFC. (zdroj: wikipedie)
- HTTP. (zdroj: wikipedie)
- DNS. (zdroj: wikipedie)
- FTP. (zdroj: wikipedie)
- SMTP. (zdroj: wikipedie)
- SSH. (zdroj: wikipedie
- IRC, ICQ, ...
- Ethernet. (zdroj: wikipedie)
- Wi-Fi. (zdroj: wikipedie
značkovací jazyky (XML, HTML)[editovat | editovat zdroj]
- XML. (zdroj: Academic Tutorials)
- HTML.