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

John Wallace johnwallace4 at yahoo.co.uk
Thu Nov 26 16:42:20 EST 2009


On Nov 26, 9:04 pm, JF Mezei <jfmezei.spam... at vaxination.ca> 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 ?
>
> Do "pipes" work between processes ? How would one process find out about
> another process' available pipe ? 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 ?

Where to even start...

You say "moving to UNIX" but you don't say which one. They're not
necessarily all the same you know, especially if "UNIX" is being used
in the loose sense of the word.

"is the only way to exchange data via IP ?"

No, of course not.

Signals do indeed mostly just "send a number to a process". Signals
can be queued or not queued, and can be reliable or not reliable,
depending on the UNIX and on the flavour of signal.

You talk about users using a command language to (natively) write to a
mailbox and then later you list a set of VMS system services not
directly available from the VMS command language. Does the difference
matter to you?

Given the limited background info, I'd suggest checking that your
target platforms have decent POSIX support and if yes, that you look
into using the POSIX APIs (the ones that used to be POSIX.1, now parts
of IEEE Std 1003) for things like pipes, shared memory, message
queues, signals, timers, threads, etc.

Pretty much everything you might want for IPC (inter process
communication) is available in a decent POSIX implementation and it's
well documented with books and examples and things, though some
reorientation from VMS thinking may be necessary. You can even get a
POSIX module for Perl, if you're that way inclined (what's Perl? think
TECO but allegedly more powerful and definitely more impenetrable).

Good luck.



More information about the Info-vax mailing list