Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: notesfiles Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!ihnp4!drutx!houxe!hogpc!houti!ariel!vax135!cornell!uw-beaver!tektronix!hplabs!hp-pcd!hp-lsd!paul From: paul@hp-lsd.UUCP Newsgroups: net.unix Subject: Re: Async pipes under SYS3,SYS5 Message-ID: <1600001@hp-lsd.UUCP> Date: Tue, 10-Jul-84 14:16:00 EDT Article-I.D.: hp-lsd.1600001 Posted: Tue Jul 10 14:16:00 1984 Date-Received: Sun, 29-Jul-84 00:14:41 EDT References: <2201@dartvax.UUCP> Organization: Hewlett-Packard - Colorado Springs, CO Lines: 31 Nf-ID: #R:dartvax:-220100:hp-lsd:1600001:000:1376 Nf-From: hp-lsd!paul Jul 24 10:16:00 1984 The basic win with named pipes (or FIFO's) is that you can connect unrelated processes with pipes. GWYN@BRL gave a good general use for them and I can add a couple more along the same lines: Games: Now you can have your "gamesmaster" (database keeper?) run all the time and just connect to it when playing is convenient. (More seriously - any global database managing program can be wired this way) Message-based systems can be implemented (somewhat) if you remember that writes to pipes of 4K or less (a safe value I think on seeing various unices) are atomic. This means that if you separate your writes to the pipes (ie.. length followed by data) you can read from several processes at once on one channel (nice since you don't have select() in SYS-III). [This is a good way to tell the gamesmaster that you want to play now - and can potentially handle all the input from the various simultaneous players]. For message-based systems, it is probably nice to have a publicly known "mailbox" (or named pipe) connected to a name server for finding out who else is "out there". As mentioned, line printer spoolers are a good application as well as most any time you want to arbitrate one resource with a program (even a network connection?). --Paul Bame HP Logic Systems Division - Colorado Springs {ihnp4!hpfcla, hplabs} !hp-lsd!paul