Zkouška 21.1.2011

Programování v UNIXu. Cvičení probíhá v laboratoři UNIX a poskytuje posluchačům průpravu v programování v jazyce C v prostředí UNIX.
_flavius

Zkouška 21.1.2011

Příspěvek od _flavius »

./a.out <soubor> <N>
Proces forkne N dalších procesů, ke každému si otevře pipe. Každý child proces načte jednu část souboru, převede je na uppercase a pošle pipou rodiči. Rodič používá na čekání na odpověď dítěte select/poll, ale vypisuje nejdříve data od prvního dítěte (první část souboru), pak od druhého... takže ten select/poll je vlastně zbytečný, stačilo by se zablokovat v read.
Docela easy, měl jsem to za necelou hodinku, akorát jsem zapomněl zapomněl zavírat pipy v dětech, ovšem kupodivu to fungovalo (Pechanec celou dobu tvrdil, že se to musí kousnout, v čemž měl pravdu, ale prostě to kupodivu fungovalo). Nakonec si řekl o index a měl jsem to za jedna. Žádná teorie nebyla.

Jinak byl příjemný, čekal jsem, že bude trochu napruzený, když jsem byl na té zkoušce jediný a tak tam musel sedět kvůli mně, ale byl úplně v pohodě :-)
Odpovědět

Zpět na „SWI015 Programování v Unixu“