Roury

Pavel Kankovsky peak na kerberos.troja.mff.cuni.cz
Středa Leden 28 18:13:42 CET 1998


On Wed, 28 Jan 1998, Jaroslav Honsa wrote:

> mknod pin p
> mknod pout p        (mam dve roury)
> cat pout &          (proces mi cte vystupni rouru)

otevre pout pro cteni a blokuje se, protoze neni co cist

> cat < pin > pout &  (jiny proces s presmerovanym vstupem a vystupem)

otevre pin pro cteni a pout pro zapis, take se blokuje, protoze neni co
cist; prvni cat zustava zablokovany

> echo aaa > pin      sice se provede, prvni cat vypise "aaa", ale oba caty
>                     skonci.

otevre pin pro zapis, zapise "aaa\n" a zavre; druhy cat se probudi, precte
text, zapise na pout, cimz se probudi prvni cat a vypise ho na vystup;
druhy cat pak z pin precte 0 bajtu (echo pin zavrelo a nikdo dalsi do nej
uz nezapisuje), procez skonci (read()==0 <=> eof), pricemz je pro zapis
zavren i pout, coz ma stejny efekt na i na prvni cat

> Jak to mam udelat, aby to bezelo porad?

ty procesy, co z pojmenovane roury ctou to nesmi vzdat,
kdyz read() vrati nulu


--Pavel Kankovsky aka Peak (troja.mff.cuni.cz network administration)
          [ Boycott Microsoft -- http://www.vcnet.com/bms ]




Další informace o konferenci Linux