Datum zadnje promjene 27.1.2003
Na ovoj stranici se nalaze materijali iz vježbi u šk.god 2002/03. Materijali ne moraju biti u
potpunosti točni i pogreške su moguće.
Opis nekih od grešaka, kao i neke druge korisne stvari možete naći na forumima na
http://degiorgi.math.hr/forum/index.php
Ukupni rezultati kolovija za šk.god. 2002/03
Arhiva starih ispita i kolokvija
Operacijski sustavi iz sk.god 2001/02
Pitanja i komentare mozete slati na
borismil@math.hr
Konzultacije vezano za vježbe i pismene ispite-> Boris Milašinović, FER-ZPM D374, ponedjeljkom od 12-13 (ili po dogovoru e-mailom)
Potrebno predznanje: C, UNIX
Dobrodošla literatura: Andrew S. Tanenbaum: Modern Operating Systems
Richard Stevens: Advanced Programming the Unix Environment
Način polaganja ispita:
Stari studenti (oni koji su slušali šk. god 2001/02 i ranije) izlaze na ispit kao i prije, uz napomenu da od proljetnog ispitnog roka
moraju poznavati i novo obrađeno gradivo. (Dakle nakon zimskog roka neće biti različitih pismenih za stare i nove studente)
Studenti od školske godine 2002/03 prije izlaska na ispit trebaju riješiti zadatak.
Nakon što se zadatak podigne treba ga riješiti u roku od mjesec dana. U slučaju
da se zadatak ne riješi u tom roku student mora uzeti drugi zadatak. Za svaki
novopreuzeti zadatak student gubi po 20% bodova od vrijednosti zadatka.
(npr. ako student vrati 2 zadatka i uzme 3. i taj zadatak vrijedi 20 bodova
student će za njega dobiti 20bod - 40% = 12 bodova.)
Trenutni popis zadataka (trenutno 28) se može vidjeti ovdje
Svaki student mora rješavati svoj zadatak.Kako koji od studenata odabere zadatak molim
neka to objavi na forumima na adresi
http://degiorgi.math.hr/forum/viewforum.php?f=24 i meni pošalje mail.
Zbroj bodova sa oba kolokvija ili broj bodova sa pismenog iznosi max 80 bodova.
Bodovi iz ispita(kolokvija) i bodovi iz zadatka se zbrajaju (max 100 bodova).
Prag na pismenom : 35/80 bodova
Prag iz kolokvija : 25/80 bodova
11.10. -> Procesi (pojam procesa, hijerarhija, stanja procesa, primjeri
kreiranje procesa (UNIX C, Windows API, Java), neke UNIX specifičnosti
(fork))
link na primjere
Dobrodošla literatura:
W.Richard Stevens: Advanced Programming the Unix Environment (Chapter 8)
18.10. -> Dretve (općenito o dretvama, razlika u odnosu na procese,
primjeri kreiranja višedretvenih programa (UNIX C, Windows API, Java))
link na primjere
Dobrodošla literatura:
Developing
Multithreaded Applications
Threads: Basic Theory and
Libraries Properties
25.10. -> Signali i prekidi (kratki pregled signala (ANSI + UNIX
specifični signali),primjeri sa složenijim metodama za rukovanje
signalima pod UNIX-om.
link na primjere
Dobrodošla literatura:
W.Richard Stevens: Advanced Programming the Unix Environment (Chapter 10)
GNU signal handling
8.11. -> Međuprocesna (međudretvena) komunikacija. Cjevovodi. Korištenje
zajedničke memorije. Međusobno isključivanje. Semafori. Primjeri (UNIX C, Windows API)
link na primjere
Dobrodošla literatura:
W.Richard Stevens: Advanced Programming the Unix Environment (Chapter 14)
Dave Marchal: Programming in C UNIX System Calls and Subroutines using C
sljedeća poglavlja:
IPC:Semaphores
IPC:Shared Memory
Further Threads Programming:Synchronization
Neki rješeni IPC problemi
Developing Multithread Application-Semaphores
15.11. -> Međuprocesna (međudretvena) komunikacija - nastavak.
Princip monitora. Klasični IPC problemi (Problem 5 filozofa, reader-writer problem, 'spavajući' brijač)
link na primjere
22.11. -> Potpuni zastoji (deadlocks). Bankarev algoritam.
29.11. -> Scheduling - načini raspoređivanja procesora
9.12. -> KOLOKVIJ
13.12. -> Upravljanje memorijom
10.1. -> Terminal Input/Output, Advanced I/O (canonical and noncanonical mode, IO multiplexing)
link na primjere
Dobrodošla literatura:
W.Richard Stevens: Advanced Programming the Unix Environment (Chapter 11,12)
17.1. -> Klijent-poslužitelj (Unix sockets, socket API)
link na primjere
Dobrodošla literatura:
Beej's Guide to Network Programming
Dave Marchal: Programming in C UNIX System Calls and Subroutines using C
sljedeća poglavlja:
IPC:Sockets
FAQ
about unix sockets
24.1. -> RPC (Remote Procedure Call)
link na primjere
Pogledati Dave Marchal: Programming in C UNIX System Calls and Subroutines using C: poglavlje:
Protocol Compiling and Lower Level RPC Programming
i http://www.cs.cf.ac.uk/Dave/C/node33.html
Java ekvivalent RPC-u je Java RMI. Tutorial se može naći na:
http://java.sun.com/docs/books/tutorial/rmi/index.html
24.1. KOLOKVIJ