Autor: Martin Kot Studijni cislo: KOT119 Predmet: Operacni systemy ------------------------------------------------------------------------------- Projekt cislo 1 - implementace algoritmu producer/consumer pomoci semaforu Program po spusteni vytvori synovsky proces, ktery do sdilene oblasti pameti umistuje znaky ze souboru. Jmeno zdrojoveho souboru se zadava jako prvni argument programu. Otcovsky proces tyto znaky ze sdilene pameti cte a vypisuje je na standardni vystup. Spusteni: proj1 name Volby: name - jmeno souboru, ktery slouzi jako zdroj Soubory: proj1.c - zdroj programu makefile - preklad zdojoveho kodu na spustitelny soubor proj1 ------------------------------------------------------------------------------- Projekt cislo 2 - implementace algoritmu jedici filozofove pomoci front zprav Program simuluje stridave jezeni a mysleni 5ti filozofu sedicich v kruhu. Nikdy nesmi jist soucasne 2 filozofove sedici vedle sebe. Informace o jejich cinnosti se vypisuji na standardni vystup. Ukonceni programu se provadi poslanim signalu SIG_INT (stisk CTRL+C). Po jeho prijeti jeste filozofove, kteri chteli jist nebo jiz ji, doji a vypisi hlasku o svem konci. Spusteni: proj2 Soubory: proj2.c - zdroj programu makefile - preklad zdojoveho kodu na spustitelny soubor proj2 ------------------------------------------------------------------------------- Projekt cislo 3 - daemon pro spousteni programu v urceny cas Program nacte soubor s casovymi udaji a k nim prirazenymi prikazy. Zaznamy s casem, ktery jiz byl, vykona hned a prejde do rezimu daemona. V nem spousti dalsi prikazy v uvedenych casech a jejich vystup presmerovava do souboru. Pokud je uvedeno nekolik prikazu ve stejnem case, jsou vykonavany postupne a poradi neni zaruceno (zalezi na standardni funkci qsort). Po vykonani vsech zadanych prikazu program konci. Syntaxe vstupniho souboru: Kazdy prikaz k vykonani se zadava jako "hh:mm prikaz", kde prikaz musi byt ukoncen koncem radku, hh je hodina spusteni a mm minuta. Spusteni: proj3 [jmeno] [-ojmeno] [-ejmeno] [-ljmeno] Volby: jmeno - jmeno je nazev souboru s casy a prikazy Neni-li uveden, voli se "to.run" -ojmeno - jmeno je nazev souboru pro standardni vystup z programu Neni-li uveden, voli se "stdout" -ejmeno - jmeno je nazev souboru pro chybovy vystup z programu Neni-li uveden, voli se "stderr" -ljmeno - jmeno je nazev log souboru Neni-li uveden, voli se "log" -h - strucna napoveda ke spousteni programu Soubory: proj3.c - zdroj programu proj3.h - hlavickovy soubor pro program makefile - preklad zdojoveho kodu na spustitelny soubor proj3