[Info-vax] Unix equivalent of a mailbox device ?

Bob Eager rde42 at spamcop.net
Thu Nov 26 16:38:15 EST 2009


On Thu, 26 Nov 2009 16:04:20 -0500, JF Mezei wrote:

> Say on VMS I have a background process that created a mailbox with a
> systen-wide logical pointing to it. Users can use DCl to write a message
> to that mailbox which causes the detached process to do certain things
> with the received daya. (say the daya is anywhere between a couple of
> bytes to 110 bytes).
> 
> When moving to Unix, what are the equivalent frameworks that one can
> use?
> 
> From what I have read, "signals" just send a number to a process.
> Correct ?

Yes. Much more similar to ASTs.

> Do "pipes" work between processes ?

Yes.

> How would one process find out about
> another process' available pipe ?

The general solution is a socket. These are more commonly used for 
networking (and thus identified by host address/port number). But there 
are also 'UNIX domain' sockets which do not use IP.

> What are the unix "pipe" equivalents
> to the SYS$CREMBX, SYS$ASSIGN, SYS$QIO to interact with another
> process's pipe ?
> 
> Or is the only way to exchange data via IP ?

So, you use 'socket' to create a socket (as per the IP style of 
programming). But the socket is bound to a name (in the file system name 
domain) rather than an IP address+port. This allows programs to 'find' 
the name, rather equivalent to assigning a logical name, known to both, 
to, say, MBAn.

You then use sockets either with a data stream, or with datagrams. 
Datagrams are a bit closer to mailboxes.

So, in short, program like IP, but use a PF_UNIX (PF_INTERNAL) address 
family when creating the socket.

-- 
Use the BIG mirror service in the UK:
 http://www.mirrorservice.org




More information about the Info-vax mailing list