X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=os2skripta.git;a=blobdiff_plain;f=skripta-os2.tex;h=b638d78be7ec145eca749840ef0c81d5cdfc16ac;hp=19a392b131afa485647740e6a253bc23f408f04b;hb=ad7a88f8f2fd398ea67f5ea1beadb46ddde4efdd;hpb=02a336700589e2361557f6556625bdaae6ddf0ad diff --git a/skripta-os2.tex b/skripta-os2.tex index 19a392b..b638d78 100644 --- a/skripta-os2.tex +++ b/skripta-os2.tex @@ -70,7 +70,7 @@ pdfauthor={\autor}% \newcommand*\Esc{\keystroke{Esc}} %margine -\usepackage[top=1.5cm, bottom=1cm, left=2.5cm, right=2cm]{geometry} +\usepackage[top=2cm, bottom=2cm, left=2.5cm, right=2cm]{geometry} \begin{document} @@ -171,9 +171,12 @@ pdfauthor={\autor}% } \lstdefinestyle{terminal}{ - frame=l, + frame=lt, % frameround=fftt, - xleftmargin=4em + backgroundcolor=\color[gray]{.95}, +% prebreak=\P, + postbreak=\ding{229}\space, + xleftmargin=2em } \lstdefinestyle{numcodeblock}{ @@ -234,7 +237,7 @@ korišćenje zvanične stranice: \url{http://nongnu.org/gm2/base_libraries.html} za samo osnovne biblioteke. -Predpostavimo da smo da je fajl napravljen u trenutnom direktorijumu, +Predpostavimo da je fajl napravljen u trenutnom direktorijumu, koristeći neki tesktualni editor (u dodatku~\ref{app-joe} je opisan ``joe'' koji se koristi na vežbama). Kreirani fajl se tada može prevesti u izvršnu verziju sledećom komandom: @@ -247,7 +250,7 @@ napraviti fajl \kod{a.out}, koji se može pokrenuti sa: \begin{terminal} ./a.out \end{terminal} -pri čemu \kod{./} naglaša da hoćemo da pokrenemo program iz trenutnog +pri čemu \kod{./} naglašava da hoćemo da pokrenemo program iz trenutnog direktorijuma (koji se označava tačkom). Ako je potrebno da izvršni fajl ima neki drugi naziv može se koristiti poziv sledećeg tipa: @@ -380,8 +383,8 @@ Budući da su u pitanju sistemski pozivi niskog nivoa, veličine tipova su nažalost promenljive i mogu zavisiti od konkretnog operativnog sistema, a naročito utiče da li je u pitanju~32--bitni, ili~64--bitni sistem. Zbog ovoga su date dve varijante bibilioteke sa tipovima. -Prva je testirana na Lubuntu 11.10 32bit, a druga je testirana na -Kubuntu 11.10 64bit. +Prva je testirana na Lubuntu 11.10 i 12.04 32bit, a druga je testirana +na Kubuntu 11.10 i 12.10 64bit. \begin{codeblock} DEFINITION MODULE FOR "C" Lib32; @@ -647,15 +650,16 @@ END; \begin{minipage}{0.6\textwidth} \begin{codeblock} -i := 1; -j := 0; -WHILE (i < n) AND (j < m) DO +dubina := 1; +brdece := 0; +WHILE (dubina < maxdubina) AND + (brdece < potrebnodece) DO pid := fork(); IF pid # 0 THEN - INC(j); + INC(brdece); ELSE - INC(i); - j:=0; + INC(dubina); + brdece := 0; END; END; \end{codeblock} @@ -663,14 +667,18 @@ END; \begin{minipage}{0.4\textwidth} \begin{tikzpicture} [proc/.style={circle,draw}, -level 1/.style={sibling distance=20mm,level distance=10mm}, -level 2/.style={sibling distance=10mm,font=\scriptsize} +level 1/.style={sibling distance=28mm,level distance=10mm}, +level 2/.style={sibling distance=14mm,font=\scriptsize}, +level 3/.style={sibling distance=6mm,font=\tiny} ] -\node[proc] (root) {0} -child[->] foreach \x in {1,2} {node[proc] {\x} - child foreach \y in {1,2} {node[proc] {\x-\y} - }}; - +\node[proc] (root) {1-0} +child[->] foreach \x in {0,1} {node[proc] {1-\x} + child foreach \y in {0,1} {node[proc] {2-\y} + child foreach \z in {0,1} {node[proc] {3-\z} + }}}; + +\node[text width=0.9\textwidth] (desc) at (0,-4) {maxdubina=4, potrebnodece=2, +čvorovi prikazuju vrednosti pri kreiranju}; \end{tikzpicture} \end{minipage} @@ -786,6 +794,34 @@ tekst se može postići sledećom komandom: joe hello.mod \end{terminal} +\subsection{Tumačenje prečica na tastaturi} + +Joe je po svojoj prirodi bogat prečicama na tastaturi. U daljem tekstu +će biti navedene mnoge od njih. Kod svih se navodi redosled +pritiskanja tastera individualno, a ako su negde tasteri spojeni sa +``+'' (alternativno sa ``-'') onda ih je potrebno pritisnuti +odjednom. Neki primeri: + +\begin{itemize} +\item \Ctrl +\keystroke{\_} (poništavanje poslednje promene) pristsak + na taster \emph{CTRL} i \emph{\_ (podvlaka)} odjednom. +\item \Ctrl +\keystroke{K}\keystroke{H} (otvaranje sistema pomoći) + pritisak na \emph{CTRL} i \emph{K} odjednom, odpustiti sve, pa onda + pritisak na \emph{H}. +\item \Esc \keystroke{,} (prelazak na sledeću stranu pomoći) + pritisak na taster \emph{Escape}, a nakon toga pritisak na taster + \emph{, (zarez)}. +\end{itemize} + +U okviru sistema pomoći koji je ugrađen u sam editor uglavnom se +pojavljuju skraćeni oblici: +\begin{itemize} +\item \^{}D isto što i ``Ctrl-D'' +\item \^{}KH isto što i ``Ctrl-K H'' +\item \^{}[. isto što i ``Esc .'' +\end{itemize} + + \subsection{Sistem pomoći} Za pomoć pri korišćenju ediora ``joe'' preporučujemo pritiskanje @@ -801,8 +837,7 @@ ovlašno upoznavanje sa stranicama pomoći i mogućnostima editora. \subsection{Rad sa fajlovima} Snimanje sa izlaskom iz programa se može uraditi sa \Ctrl -+\keystroke{K}\keystroke{X} (\emph{ctrl} i \emph{K} odjednom, pa onda -\emph{X} -- ova šema pritiskanja tastera važi za sve prečice), dok se ++\keystroke{K}\keystroke{X}, dok se samo snimanje izvršava sa \Ctrl +\keystroke{K}\keystroke{D}. U oba slučaja ``joe'' pita za ime fajla koji snimamo, pri čemu kao podrazumevanu vrednost ponudi trenutno ime.