352-0508/02 – Operační systémy a programování (OSaP)
Garantující katedra | Katedra automatizační techniky a řízení | Kredity | 4 |
Garant předmětu | Ing. David Fojtík, Ph.D. | Garant verze předmětu | Ing. David Fojtík, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinný |
Ročník | 1 | Semestr | letní |
| | Jazyk výuky | čeština |
Rok zavedení | 2013/2014 | Rok zrušení | |
Určeno pro fakulty | FS | Určeno pro typy studia | navazující magisterské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Hlavní cíle předmětu jsou:
- vštípit studentům znalosti z oblasti vnitřní architektury moderních operačních systémů tak, aby byly schopni analyzovat a řešit problémy vzniklé při provozu různých aplikací a služeb,
- naučit navrhovat, vyvíjet a tvořit nízkoúrovňový software s úzkou vazbou na hardware a vnitřní mechanizmy operačního systému.
Studenti tak získají:
- Profesionální přistup k tvorbě programových modulů nízkoúrovňového charakteru s úzkou vazbou k hardwaru.
- Hluboké znalosti vnitřních mechanizmů a principů činností programů.
- Přehled v architekturách operačních systémů a řešených problémech ohledně správy procesů, virtuální paměti, přístupových práv, nároků na reálný čas apod.
- Analytické schopnosti odhalovat problémy spjaté s provozem softwarových řešení na moderních operačních systémech.
- Plně využívat schopnosti programového jazyka ANSI/ISO C.
- Programovat v jazyce C# v prostředí MS Windows s využitím platformy .NET.
Vyučovací metody
Přednášky
Cvičení (v učebně)
Projekt
Anotace
Předmět Operační systémy a programování vznikl jako reakce na požadavky ze strany zaměstnavatelů, které jsou kladeny na absolventy oborů zaměřených nebo úzce spjatých s výpočetní technikou především však z oblasti automatizace. U těchto absolventů se mimo jiné předpokládá znalost nízkoúrovňového programování a v souvislosti s tím i povědomí o architektuře Operačních systémů. Hlavní náplní je seznámit studenty se strukturami a obecnými interními mechanizmy moderních operačních systémů a se základy programování v jazyce C a C#. Na předmět navazuje celá řada jiných, které získané znalosti především z jazyka C vyžadují. Výuka je rozdělena na dvě části:
1. programování v jazyce ANSI C a C#,
2. architektura operačních systémů.
Povinná literatura:
Doporučená literatura:
Další studijní materiály
Forma způsobu ověření studijních výsledků a další požadavky na studenta
E-learning
Další požadavky na studenta
Každý student obdrží individuální zadání pro vypracování programu v jazyce C (k dispozici je cca 50 typů zadání). Vypracovaný program je hodnocen individuálně nejen po funkční stránce, ale především na úrovni vlastního zdrojového textu.
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
1. Hardware z pohledu programátora
2. Základní elementy jazyka c a terminálový (konzolový) vstup a výstup
3. Řízení toku programu
4. Preprocesor jazyka c
5. Tvorba vlastních funkcí a oddělený překlad
6. Práce s textovými a binárními soubory
7. Práce s ukazateli a jednorozměrná pole
8. Vícerozměrná pole, řetězce a Struktury
9. Výčtové typy, uniony a tvorba seznamů
10. Bitová aritmetika a bitové pole. Programování jednočipů.
11. Úvodem do operačních systémů a jejich architektur
12. Správa procesů víceúlohových operačních systémů
13. Správa paměti víceúlohových operačních systémů
14. Bezpečnostní podsystém a operační systémy reálného času
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky