460-4084/02 – Operační systémy mobilních zařízení (OSMZ)

Garantující katedraKatedra informatikyKredity4
Garant předmětuMgr. Ing. Michal Krumnikl, Ph.D.Garant verze předmětuMgr. Ing. Michal Krumnikl, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinný
Ročník1Semestrletní
Jazyk výukyangličtina
Rok zavedení2015/2016Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studianavazující magisterské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
KRU13 Mgr. Ing. Michal Krumnikl, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Zápočet a zkouška 2+2
kombinovaná Zápočet a zkouška 10+0

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Cílem předmětu je představit tvorbu aplikací využívající přímo prostředků OS mobilního zařízení. Seznámení s Android SDK a NDK, Windows CE API, iOS a tvorbou aplikací pro Linux, sestavování kernelu a obrazu disku embedded systému. Po ukončení kurzu budou studenti schopni: - Identifikovat jednotlivé vrstvy operačního systému a popsat jeho hlavní funkce. - Vyjmenovat klíčové charakteristiky nejpoužívanějších systémů mobilních zařízení. - Popsat vnitřní procesy OS s ohledem na průběh života procesu. - Vytvářet aplikace běžící přímo na konkrétním systému bez podpory rozšiřujících runtime knihoven. - Modifikovat existující software tak, aby se lépe využily systémové zdroje.

Vyučovací metody

Přednášky
Cvičení (v učebně)

Anotace

Vytváření aplikací pomocí programovacích jazyků Java a C# je sice velmi pohodlné, ale v některých případech není příliš efektivní. Jde zejména o tvorbu aplikací nebo jejich částí, které vyžadují extrémní výpočetní výkon nebo velmi intenzivně spolupracují s periferními zařízeními. V těchto případech lze mnohem lepších výsledků dosáhnout pomocí programovacích jazyků C/C++ a přímého využití prostředků operačních systémů (Linux, Windows Mobile, iOS, Symbian).

Povinná literatura:

Tannenbaum, Andrew S., BOS, Herbert, Modern Operating Systems (4th Edition), Prentice Hall, 2014, ISBN 978-0133591620

Doporučená literatura:

Yaghmour Karim, Embedded Android: Porting, Extending, and Customizing, O'Reilly Media, 2013, ISBN 978-1449308292 Ratabouil, Sylvain, Android NDK Beginner's Guide, Packt Publishing, 2012, ISBN 978-1849691529 Levin, Jonathan, Mac OS X and iOS Internals: To the Apple's Core, Wrox, 2012, ISBN 978-1118057650 Boling, Douglas, Programming Windows Embedded CE 6.0 Developer Reference, Microsoft Press; 4 edition, 2007, ISBN 978-0735624177

Forma způsobu ověření studijních výsledků a další požadavky na studenta

Průběžná analýza probíraných témat a jejich praktická implementace. Hodnocení samostatně řešených úkolů. Podmínky udělení zápočtu: úspěšné vypracování samostatných úkolů během semestru.

E-learning

Další požadavky na studenta

Znalost programování v některém z vyšších programovacích jazyků (C#, Java, C++, apod.) Základní znalost vývoje aplikací pro některou z mobilních platforem.

Prerekvizity

Kód předmětuZkratkaNázevPovinnost
460-2025 TAMZ II Tvorba aplikací pro mobilní zařízení II Doporučená

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Architektura operačního systému, charakteristika mobilních OS. 2. Správa procesů, souběžné zpracování, IPC, synchronizace. 3. Správa paměti, stránkování, segmentace. 4. Souborové systémy (EXT2/3/4, JFFS/YAFFS, FAT). 5. Komunikace s periferními zařízeními, síťová komunikační rozhraní. 6. Linux, Android. 7. Windows Mobile. 8. iOS (iPhone OS). 9. Symbian OS. 10. Uživatelská rozhraní. 11. Zajištění bezpečnosti dat, možnosti kryptografie. 12. Techniky zpětného inženýrství, mobilní malware. 13. Power management. Cvičení (na PC učebně): 1. Android SDK, základy práce se sockets. 2. Implementace vlastního HTTP serveru - Sockets, Threads. 3. Problémy synchronizace, použití semaforů. 4. Ukázka synchronizace vláken, použití zpráv mezi vlákny. 5. Úvod k Android NDK, postup sestavení. 6. Práce s poli a objekty, předávání skrz JNI. 7. Možnosti akcelerace grafických operací. 8. Zpracování digitálních signálů (zvuků), FIR, FFT. 9. Realtime zpracování obrazu, Camera View, detekce pohybu. 10. Procesy, externí volání. 11. Zpětné inženýrství, struktura APK souborů. 12. Analýza malware. 13. Optimalizace kódu, profilery.

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2015/2016 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Zápočet a zkouška Zápočet a zkouška 100 (100) 51
        Zápočet Zápočet 45  23
        Zkouška Zkouška 55  28
Rozsah povinné účasti: Povinná účast na přednáškách a cvičeních, jsou akceptovány 2 omluvy

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2020/2021 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2020/2021 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 1 povinně volitelný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie K angličtina Ostrava 1 povinný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 1 povinně volitelný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie K angličtina Ostrava 1 povinný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 1 povinně volitelný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie K angličtina Ostrava 1 povinný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie K angličtina Ostrava 1 povinný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie P angličtina Ostrava 1 povinný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T059) Mobilní technologie K angličtina Ostrava 1 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku
V - ECTS - mgr. 2020/2021 prezenční angličtina volitelný odborný 401 - Studijní oddělení FEI stu. blok
V - ECTS - mgr. 2019/2020 prezenční angličtina volitelný odborný 401 - Studijní oddělení FEI stu. blok