6. feladat
Feladva nov. 23-28, 2009
Határidő dec. 12, 2009
POSIX-Solaris szálak (threads) - szinkronizálás nélkül
Feltöltendő
állomány neve: S06_nn_xxxxxxx(_aa).c, ahol nn - feladat
száma; xxxxxxx - felhasználó azonosítója a linux szerveren; (aa - az illető
állomány funkcionalitásának
valamilyen ismertető
jegye több modul használata esetén)
1. Implementáljuk a termelő/fogyasztó problémáját
szálakkal (a termelő, illetve fogyasztó véges körkörös pufferbe ír). Hozzunk létre
több termelő, illetve fogyasztó szálat.
2. Írjunk szerver programot, melyhez több kliens kapcsolódhat. A szerver
minden egyes kérés kezelésére létrehoz egy külön szálat, az pedig kiírja az
érkező üzeneteket az alábbi alakban:
kliens x: üzenet, ahol x egy szám, mely
a szerverhez való kapcsolódás sorrendjét tükrözi.
3. Írjunk programot, mely N szálat hoz létre.
Ezek mindenike kiír egy üzenetet, az
azonosítóját, és megpróbálja végrehajtani a paraméterként kapott shell-parancsot, melynek kimenetét a “<nr>_out” (nr=1,..,N)
állományba írja. A művelet befejezése után is írjon ki egy-egy
üzenetet
4. Egy program létrehoz egy 1 és 0 elemeket tartalmazó
mátrixot. Egy-egy szál n másodpercenként, soronként végigjárja a mátrixot, és amennyiben
valamelyik mátrixelem szomszédságában több, mint 5 1-es
érték van, akkor ennek az elemnek
az értéke is 1 lesz, ha pedig több, mint 5 0-s szomszédja van,
0-vá válik ő is. Kiírjuk a mátrixot
mindaddig, ameddig már nem változik
többé.
5. Egy program létrehoz egy 1 és 0 elemeket tartalmazó
mátrixot. Egy-egy szál n másodpercenként, soronként végigjárja a mátrixot, és amennyiben
valamelyik mátrixelem szomszédságában több, mint 5 0-s érték van, akkor ennek az elemnek
az értéke 1 lesz, ha pedig több, mint 5 1-es szomszédja van,
0-vá válik. Kiírjuk a mátrixot mindaddig,
ameddig már nem változik többé.
6. Írjunk programot, mely egy NxN-es mátrixot
generál, majd létrehoz N szálat. Ezt követően időnként generál egy i, illetve
j indexet, és véletlenszerűen módosítja a mátrix i,j elemét,
majd hozzáírja a módisított mátrixot egy állományhoz. Az i. szál időnként kiszámolja külön az i. sorban,
illetve i. oszlopban levő elemek összegét, és csak akkor
írja azt ki, ha valami módosult
az előzőekhez képest.
Tippek / gyakori hibák