Operacijski sustavi za ugrađena računala

Opis predmeta

Ugrađena računala se bitno razlikuju od ostalih računalnih sustava. Mnogi od njih upravljaju procesima kod kojih je vremenski usklađena akcija od presudnog značenja te se zbog toga upravljački programi i ostatak sustava moraju prilagoditi da udovolje takvim zahtjevima. Takvi sustavi najčešće nisu pod stalnim nadzorom čovjeka te se od njih očekuje dugotrajan samostalan rad, što zahtijeva visoku pouzdanost i ugradnju mehanizama oporavka od pogrešaka. Osnovni cilj predmeta je na primjeru prikazati metode i postupke izgradnje operacijskog sustava i upravljačkih programa za ugrađena računala te na taj način kod studenata razviti razumijevanje mehanizama koji se koriste u takvim sustavima kao i savladati postupke izgradnje takvih sustava.

Ishodi učenja

  1. objasniti potrebna svojstva računalnih sustava za ugrađene primjene
  2. prepoznati probleme ostvarenja ugrađenih računalnih sustava
  3. opisati principe rada osnovnih komponenti jezgre operacijskog sustava
  4. prilagoditi postojeće komponente jezgre operacijskog sustava
  5. koristiti skup alata za izgradnju programske komponente za ugrađene računalne sustave
  6. koristiti napredne mogućnosti programskog jezika C
  7. odabrati prikladne algoritme za korištenje pri izgradnji programske komponente za ugrađena računala

Oblici nastave

Predavanja

Nastava je organizirana kroz dva ciklusa: prvi traje 7 tjedana, a drugi 6 tjedana nastave. Nakon prvog ciklusa piše se međuispit, a nakon drugoga završni ispit u koji ulazi cijelo gradivo. Tjedno opterećnje predavanja je 2 školska sata. U sklopu predavanja obavljati će se i kratke provjere znanja (blicevi).

Samostalni zadaci

U okviru domaćih zadaća studenti trebaju proučiti probleme zadane u objavljenim materijalima (objavljenim i pojašnjenima na prvim predavanjima), te projektirati i ostvariti programsko rješenje. Svako rješenje popratiti kratkom dokumentacijom. Programsko rješenje i dokumentaciju treba pohraniti u informacijski sustav te potom osobno pokazati nastavniku na ocjenu.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Domaće zadaće 50 % 30 % 50 % 0 %
Kratke provjere znanja 0 % 10 % 0 % 0 %
Međuispit: Pismeni 0 % 20 % 0 %
Završni ispit: Pismeni 50 % 20 %
Završni ispit: Usmeni 20 %
Ispit: Pismeni 50 % 50 %
Ispit: Usmeni 50 %

Tjedni plan nastave

  1. Oblikovanje programske potpore za ugradbene sustave, Posebnosti izgradnje programske potpore za ugradbene sustave, Oblikovanje operacijska sustava za ugradbene sustave
  2. Razvojna okolina za izgradnju operacijska sustava za ugradbena računala. Izgradnja sustava od nule. Alati, postupci, postavke. Slojevitost u izvornom kodu. Početno pokretanje i inicijalizacija sustava.
  3. Izgradnja sustava iz mnoštvo datoteka. Slojevitost u izvornom kodu. Makefile. Skripta za povezivanje, za pripremanje programa za različite memorijske lokacije. Odjeljci u slici sustava (programu).
  4. Upravljanje ulazno-izlaznim napravama. Prekidi.
  5. Dinamičko upravljanje memorijom.
  6. Upravljanje vremenom. Brojila, alarmi, satovi.
  7. Upravljanje napravama kroz unificirano sučelje. Tipkovnica. Serijska veza.
  8. Međuispit
  9. Naredbena ljuska. Napredne mogućnosti u Makefile-u.
  10. Višedretvenost: kontekst dretve, zamjena jedne dretve drugom, raspoređivanje dretvi.
  11. Sinkronizacijski i komunikacijski mehanizmi: semafori, monitori, redovi poruka. Signali.
  12. Zaštita mehanizmom procesa. Pozivi jezgrinih funkcija prekidima. Odvajanje izvorna kod jezgre i programa. Korisnički način rada.
  13. Logičke i fizičke adrese. Priprema jezgre za fizičke adrese, programa za logičke adrese. Upravljanje procesima.
  14. Pregled postojećih operacijskih sustava za ugradbene sustave.
  15. Završni ispit

Studijski programi

Sveučilišni diplomski
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti profila (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmet profila (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti profila (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
[FER2-HR] Elektroničko i računalno inženjerstvo - profil
Predmeti specijalizacije profila (2. semestar)
[FER2-HR] Računalno inženjerstvo - profil
Predmeti specijalizacije profila (2. semestar)

Literatura

Leonardo Jelenković (2021.), Operacijski sustavi za ugrađena računala, online
Leo Budin, Marin Golub, Domagoj Jakobović, Leonardo Jelenković (2010.), Operacijski sustavi,
Abraham Silberschatz, Greg Gagne, Peter B. Galvin (2018.), Operating System Concepts, Wiley
André M. van Tilborg, Gary M. Koob (2012.), Foundations of Real-Time Computing: Scheduling and Resource Management, Springer Science & Business Media
Alexander D. Stoyenko (2012.), Constructing Predictable Real Time Systems, Springer Science & Business Media
Jean Labrosse (2002.), MicroC/OS-II, CRC Press

Za studente

Izvedba

ID 222570
  Ljetni semestar
5 ECTS
R1 Engleski jezik
R1 E-učenje
30 Predavanja
0 Seminar
0 Auditorne vježbe
5 Laboratorijske vježbe
0 Konstrukcijske vježbe

Ocjenjivanje

90 izvrstan
75 vrlo dobar
60 dobar
50 dovoljan