ZEMRIS

Operacijski sustavi, laboratorijske vježbe


Organizacija vježbi

Popis studenata upisanih na predmet Operacijski sustavi u ak.godini 2012/13. Molimo studente koji se ne nalaze na popisu da se jave u Studentsku službu.

Laboratorijske vježbe mogu se predati u više termina tijekom semestra (prema dolje navedenoj tablici). U svakom terminu predaje se po jedna vježba. Vježbe se predaju po redu.
Laboratorijske vježbe nije moguće predati nakon završetka semestra.
Svaki student se za svaku vježbu koju želi predati u nekom terminu mora prijaviti na ferku.
Prijave započinju u četvrtak u tjednu prije tjedna labosa, a završavaju 24 sata prije termina labosa.

#

Tjedan predaje
(srijeda, 11-17 sati)

Bodovanje (najveći mogući broj bodova)

Vježba 1

Vježba 2

Vježba 3

Vježba 4

2A

2B

2C

3A

3B

3C

4A 4B

1.

24.10.2012.

3

-

-

-

-

-

-

-

-

2.

7.11.2012.

3

1

1

1

-

-

-

-

-

3.

14.11.2012.

1

1

1

1

1

1

2

-

-

4.

19.12.2012.

0

0.5

0.5

0.5

1

1

2

-

-

5.

16.1.2013.

-

-

-

-

0.5

0.5

1

3

3

6.

23.1.2013.
(nadoknada).

0

0

0

-

0

0

-

2

-

 

Rok za upload
(domaća zadaća)

31.10.2012.
do 13 sati
8.11.2012.
do 13 sati
13.12.2012.
do 13 sati
11.1.2013.
do 13 sati
15.1.2013. do 10 sati

Vježbe 2C, 3C i 4B (u tablici su označene plavom bojom) nisu obvezne, ali donose bodove. Te vježbe predaju se isključivo zajedno s ostalim zadacima te vježbe (npr. vježba 2C se predaje isključivo zajedno sa 2A i 2B)
Prilikom predaje laboratorijske vježbe će se bodovati s 0 do najviše onoliko bodova koliko je naznačeno u tablici. Laboratorijska vježba se ne može predati ako prethodno nije postavljena na Web.
U nekom terminu/tjednu je moguće predati najviše jednu vježbu.

Studenti koji su već ranije odradili laboratorijske vježbe moraju ih ponovno odraditi ove godine.

Domaća zadaća. Za domaću zadaću studenti trebaju pažljivo proučiti upute za svaku vježbu i riješiti zadatke. Primjeri izvođenja programa su priloženi uz svaki zadatak i bit će dodatno prikazani na predavanjima. Prije predaje vježbi – barem jedan dan prije, izvorni tekstovi programa moraju se postaviti na Web. Ukoliko se programi postave na Web do naznačenih datuma ("Rok za upload") dobiva se po 1 bod iz domaće zadaće te vježbe (inače 0).

Izvorne tekstove programa pisati prema uputama u http://lxr.linux.no/linux/Documentation/CodingStyle (posebice paziti na 'uvlačenje', razmake te lomljenje preduge linije!). Primjeri korištenja stila prikazani su u kodovima priloženim u uputama (npr. random_prime.c, sigaction.c). Neki od priloženih programa koriste neznatno modificirani stil (više razmaka) koji je također prihvatljiv.

Sve datoteke koje čine jednu vježbu staviti u arhivu "vjezba_x.zip" (x-broj vježbe). Sustav za detekciju plagijata ne prihvaća druge arhive osim zip (primjerice rar, gz i sl.)! Imena datoteka moraju biti kako je zadano u zadacima. Nikakve druge datoteke ili direktorije ne stavljati u arhivu (arhiva ne sadrži direktorij već samo datoteke)! Nakon provjere da je ispravna datoteka (zip arhiva) postavljena na Web, obavezno zaključati predaju na Webu. Strogo se pridržavati navedenih uputa potrebnih radi automatizirane provjere ispravnosti. Nepridržavanje će se bodovno sankcionirati. (Učestale pogreške koje nose negativne bodove su: korištenje neke druge arhive osim zip, predaja vježbe na krivom mjestu: vježba x predaje se kao vjezba_y.zip.)


Sadržaj vježbi

a) Prvi labos: Prekidi i signali

(3) Zadatak 1 - Prekidi i signali (datoteke s izvornim tekstovima programa se trebaju zvati obrada.c i generator_prekida.c odnosno obrada.cpp i generator_prekida.cpp - ekstenzija ovisi o programskom jeziku)

b) Drugi labos: Višezadaćni rad

(1) Zadatak 2a: Isključivanje Dekkerovim algoritmom (studenti kojima JMBAG završava s brojem 0-4 trebaju ostvariti zadatak koristeći dretve, ostali koristeći procese) (dekker.c)
(1) Zadatak 2b: Isključivanje Lamportovim algoritmom (studenti kojima JMBAG završava s brojem 5-9 trebaju ostvariti zadatak koristeći dretve, ostali koristeći procese) (lamport.c)
(1) Zadatak 2c: Analiza datoteka - sinkronizacija radnim čekanjem (OPCIONALNO) (datoteke.c)

c) Treći labos: Sinkronizacijski mehanizmi

(1) Zadatak 3a: Problem proizvođača i potrošača - sinkronizacija semaforima (proizvodjac_potrosac.c)
(1) Zadatak 3b: Problem pet filozofa - sinkronizacija monitorima (5filozofa.c)
(2) Zadatak 3c: Djed Božićnjak - (OPCIONALNO, studenti kojima JMBAG završava s brojem 0-4 trebaju ostvariti zadatak koristeći semafore, ostali koristeći monitore) (bozicnjak.c)

d) Četvrti labos: Upravljanje spremnikom

(3) Zadatak 4a: Simulacija straničenja na zahtjev  (stranicenje.c)
(3) Zadatak 4b: Simulacija dinamičkog upravljanja spremnikom (OPCIONALNO) (simulacija.c)


Upute za upload

Postupak predaje vježbi (rezime):

  1. Riješiti domaću zadaću: pročitati pripremu za vježbu i samostalno riješiti zadatke.
  2. Prijaviti termin u tjednu predaje vježbi putem sustava ferko. U jednom tjednu moguće je prijaviti samo jedan termin.
  3. Postaviti na Web (u sustav ferko) izvorne tekstove programa najkasnije 24 sata prije termina predaje. Ukoliko se vježbe predaju do termina zadanog u tablici, dobiva se bod iz domaće zadaće.
  4. Postavljenu (uploadanu) zadaću u ferku nužno je zaključati (ovo je uvjet za predaju laboratorijske vježbe).
  5. Predati, tj. pokazati asistentu u zakazanom terminu programska rješenja zadataka.
    Eventualni izostanak treba opravdati odgovarajućom valjanom ispričnicom. Neopravdani izostanak će se bodovno sankcionirati (-2 boda).

Korisni linkovi:

  1. Kratke upute za rad u UNIX/Linux okruženju, prevođenje i pokretanje
  2. UNIX i kako ga koristiti (knjiga)
  3. Auditorne vježbe - turbo uvod u C++
  4. Auditorne vježbe - nastavak C++
  5. Knjiga Bruce Eckel's "Thinking in C++" 2nd Edition (lokalno u html formatu)
  6. Neki programčići za Win32 okruženje (slični zadacima s labosa)
  7. Sinkronizacijski problemi (rješenja i komentari)
  8. Upute za razne POSIX (i ostale UNIX) funkcije - http://www.unix.org/2008edition/

Korisni programi:

  1. PuTTY (lokalno)
  2. WinSCP (standalone app.) (lokalno)
  3. VMWare Player, vmware sustavi, kratke upute.

Konzultacije predavanja

Grupa

Predavač

R1

Domagoj Jakobović: utorkom 9-10, D329

R2

Marin Golub: ponedjeljkom 13-14, D329

R3

Leonardo Jelenković: ponedjeljkom 13-14, D342

R4

Stjepan Groš: petak 10-11, D347

Konzultacije vježbe

Grupa Studenti Asistent
A A-Kecerin Goran Delač
B Kesedžić-Petrizio KlemoVladimir
C Pevec-Žs Marin Šilić

Termin konzultacija sa asistentom dogovara se mailom na e-mail adresu: ime.prezime@fer.hr .


Zadnja promjena:24.01.2013