Zkouska 6.4.2007

Odeslat odpověď

Smajlíci
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode je zapnutý
[img] je zapnutý
[flash] je vypnutý
[url] je zapnuté
Smajlíci jsou zapnutí

Přehled tématu
   

Rozšířit náhled Přehled tématu: Zkouska 6.4.2007

Zkouska 6.4.2007

od langosh » 9. 4. 2007 22:26

Kdyby nekdo chtel vedet, co bylo na zkousce, aby si to mohl vyzkouset, tak tady je zadani.

Hlavni program vytvori predem dany pocet procesu (napr. 3). Je dany soubor, kde je ulozen jeden ineger, ze zacatku nastaveny na 0. Tento soubor se mel namapovat. Kazdy dostane pridelene cislo tim zpusobem, ze se podiva do tohoto namapovaneho souboru, kde si precte sve cislo, a cislo zvedne o jedna a ulozi. Pro zajisteni se mel pouzit semafor.
Dale existuje spolecny soubor pro vsechny procesy. Kazdy proces se jednou za dve vteriny podiva na takovy byte v tom souboru, jake je jeho cislo. Pokud je na tom miste 0, tak pokracuje dale v cykleni, pokud je tam jednicka, tak vytvori dalsi proces, ktery dela to same. Pokud je tam dvojka, tak pocka na vsechny sve potomky, dokud neskonci a pak skonci take. cely program je ukoncen, pokud skoncily vsechny procesy. Zmena cisel v tom souboru se provadela rucne, pomoci skriptu, ktery nam dal.


Bylo to sice dlouhe, ale celkem lehke zadani, takove hodne umele, aby se vyzkouselo co nejvic probranych veci. Doufam ze sem na nic nezapomel.

Tady je moje reseni. Melo by tam byt vsechno co chtel. jedine co mi vytknul bulo pouziti

fprintf(stdout,.....
sync();

misto

fprintf(stderr,...

Jinak celkem snadna zkouska, neudelaly to snad jenom dva lidi z osmi. Jeden odesel v prubehu, a druhy nemel funkcni program.

Nahoru