Vgradni sistemi

Opis predmeta

Predmet uvede arhitekturo vgradnih sistemov, napredne funkcije ter njihovo uporabo. Osredotoča se na operacijske sisteme, realnočasovne operacijske sisteme in operacijske sisteme za vgradne sisteme, ter podrobno obravnava Linux, vključno s sistemskimi klici in funkcijami. 

Poudarek je na upravljanju procesov, večopravilnosti, večnitnosti in upravljanju pomnilnika, z praktičnimi primeri v C/C++. Preučuje se medprocesno komuniciranje, sinhronizacija, semaforji in deljeni pomnilnik, s primeri v C/C++. 

Predmet pokriva tudi osnove komunikacijskih omrežij, vključno z modelom odjemalec-strežnik in programiranjem vtičnic, čas in upravljanje časa v realnem času ter večprocesorske sisteme in paralelizem, s ciljem zagotoviti praktično znanje za razvoj in implementacijo vgradnih sistemov in njihove programske opreme.

Predmet učimo na programih

Elektrotehnika 2. stopnja

Cilji in kompetence

Razumevanje osnovnih načel ter uporaba sodobnih tehnologij in rešitev v naprednejših vgradnih  sistemih za avtomatiko in robotiko.

Metode poučevanja in učenja

Na predavanjih so predstavljene teoretične osnove obravnavanih poglavij skupaj s praktičnimi prikazi na Linuxu.

Praktično delo poteka v okviru laboratorijskih vaj. Te so zasnovane v obliki večih programerskih nalog, v katerih se študentje postopoma seznanjajo s posameznimi elementi modernih operacijskih sistemov na konkretnem primeru Linuxa. Skupino na vajah  sestavljata dva ali trije študentje, rezultati pa so v obliki programske kode v jeziku C/C++ za izbrano vgradno platformo. Po vsakem delu vaj študentje predstavijo svoje rezultate asistentu.

Predvideni študijski rezultati

Po uspešno opravljenem predmetu bi naj bili študenti zmožni:

  • Definirati osnovna načela operacijskih sistemov za vgradne, realnočasovne sisteme v avtomatiki in robotiki.
  • Poiskati problemu primerne rešitve za medprocesno komunikacijo v vgradnih sistemih.
  • Uporabiti problemu primerna orodja, ki jih ponuja operacijskih sistem za kontrolo procesov v vgradnih sistemih.
  • Izdelati programsko opremo za vgradne sisteme, temelječe na operacijskih sistemih.
  • Izdelati preprosto komponento operacijskega sistema, ki deluje v načinu jedra (preprost modul jedra v OS Linux).
  • Izbrati ter svetovati prave in primerne rešitve na podlagi vgradnih sistemov za konkretne probleme iz avtomatike in robotike.

Temeljni viri in literatura

  1. Kerrisk, Michael. The Linux Programming Interface: A Linux and UNIX System Programming Handbook. No Starch Press, cop. 2010, San Francisco. ISBN 978-1-59327-220-3 (vez.), 1-59327-220-0 (vez.) COBISS.SI-ID: 5193569. Na voljo v knjižnici UL FE.  

  2. Stevens, W. Richard, in Stephen A. Rago. Advanced Programming in the UNIX Environment. 3rd ed. Addison Wesley, cop. 2013, Upper Saddle River [etc.]. ISBN 978-0-321-63773-4, 0-321-63773-9. COBISS.SI-ID: 2053701. Na voljo v knjižnici UL FE. 

Bodi na tekočem

Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana

E:  dekanat@fe.uni-lj.si T:  01 4768 411