\documentclass[10pt,a4paper]{article}
\usepackage[croatian]{babel}
\usepackage{indentfirst}

\topskip                0cm \topmargin              0cm
\headheight             0cm \headsep                0cm
\textheight             25cm

\linespread{1} %razmak izmedju redova

\begin{document}
\thispagestyle{empty}
\begin{center}
OPERACIJSKI SUSTAVI \\ 29.9.2003.
\end{center}

\begin{bf}
Studenti koji su slu\v{s}ali kolegij u teku\'{c}oj \v{s}kolskoj
godini rje\v{s}avaju zadatak br. $2$ te jo\v{s} 3 (tri) zadatka po
izboru. Na zada\'{c}i obavezno navedite koje godine ste slu\v{s}ali
kolegij.
\end{bf}

\newcounter{zadaci}
\begin{list}{\makebox[0pt][r]{\textbf{\arabic{zadaci}. }}}
  {\usecounter{zadaci}\setlength{\leftmargin}{0pt}
   \setlength{\labelsep}{0pt}\setlength{\labelwidth}{0pt}
   \setlength{\listparindent}{0pt}\setlength{\parsep}{1ex}}
\item
Koriste\'{c}i sistemske pozive \emph{fork}, \emph{waitpid},
\emph{exit}, \emph{sleep} i \emph{kill} napi\v{s}ite program u kojem
proces roditelj kreira dijete i to dijete kreira jo\v{s} jedno dijete
('unuk' po\v{c}etnog procesa). Unuk treba ispisati poruku 'Ja sam
unuk' i vrtiti se u beskonacnoj petlji. Nakon 60 sekundi dijete
treba uni\v{s}titi unuka i zavr\v{s}iti svoje izvo\dj{}enje. Roditelj treba
pri\v{c}ekati proces dijete da zavr\v{s}i i ispisati poruku 'Proces dijete
zavr\v{s}io'.

\item Pretpostavimo da imamo videokonferenciju i profesora koji
odgovara na pitanja udaljenih studenata. Potrebno je napisati
algoritam koji \'{c}e rije\v{s}iti problem sinkronizacije i to
zadovoljavaju\'{c}i sljede\'{c}e uvjete:\\
a) ako nema studenata koji \v{z}ele postaviti pitanje, profesor smije
uzeti predah i pro\v{s}etati se\\
b) u isto vrijeme samo jedan student mo\v{z}e pri\v{c}ati\\
c) na svako pitanje \'{c}e biti odgovoreno te nijedan student ne
postavlja pitanje dok profesor ne zavr\v{s}i sa odgovorom.

Potrebno je napisati sljede\'{c}e procedure:

\textit{Zapo\v{c}ni\_Odgovor()},
\textit{Odgovor\_Zavr\v{s}en()},
\textit{Zapo\v{c}ni\_Pitanje()},
\textit{Pitanje\_Zavr\v{s}eno()}.

Profesorov radni ciklus bi bio: \\
\textit{Zapo\v{c}ni\_Odgovor(); daj odgovor ;Odgovor\_Zavr\v{s}en()}\\
Napomena: \textit{Zapo\v{c}ni\_Odgovor()} ne zavr\v{s}ava sve dok nema
postavljenog pitanja.\\
\\
Svakog studenta mo\v{z}emo opisati petljom:\\
\textit{Zapo\v{c}ni\_Pitanje(); pitaj ;Pitanje\_Zavr\v{s}eno()}\\
Napomena: \textit{Zapo\v{c}ni\_Pitanje()} ne zavr\v{s}ava sve dok nije do\v{s}ao
studentov red na postavljanje pitanje. Tako\dj{}er funkcija \textit{Pitanje\_Zavr\v{s}eno()} ne zavr\v{s}ava sve dok
profesor ne odgovori na to pitanje.

\item Objasnite \v{s}to je Belady-eva anomalija i navedite jedan primjer.

\item Objasnite u kojem od sljede\'{c}ih slu\v{c}ajeva se vremenski
isplati implementirati rje\v{s}enje zadatka u vi\v{s}e procesa/dretvi te
obrazlo\v{z}ite va\v{s}e tvrdnje.

a) mno\v{z}enje velikih matrica na ra\v{c}unalu sa jednim procesorom\\
b) mno\v{z}enje velikih matrica na vi\v{s}eprocesorskom ra\v{c}unalu\\
c) mno\v{z}enje velikih matrica bez obzira na broj procesora gdje se
rezultati moraju poslati na udaljeni stroj.
\\
Zbog \v{c}ega se za male matrice ne isplati dijeliti problem na vi\v{s}e
procesa/dretvi?

\item Objasnite pojam signala. \v{S}to mo\v{z}emo napraviti sa signalom
koji je dostavljen nekom procesu? Nabrojite nekoliko
najzna\v{c}ajnijih signala.
\end{list}

\begin{flushright}
\vspace{2 em}
 Boris Mila\v{s}inovi\'{c}\\
\end{flushright}

\begin{flushleft}
  Rezultati \'{c}e biti vidljivi na studomatu do utorka 30.9.2003. u 12h.\\
  Usmeni ispit: srijeda 1.10.2003. u 10h
\end{flushleft}

\end{document}
