Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Name for Solaris door library module

by asarih (Hermit)
on Aug 24, 2003 at 03:18 UTC ( #286138=perlquestion: print w/replies, xml ) Need Help??

asarih has asked for the wisdom of the Perl Monks concerning the following question:

I'm writing a Perl module to interface with door libraries on Solaris. Doors are used for fast IPC among processes on the same machine. There is a dead project to implement it on Linux, but otherwise it is a Solaris-only thing.

I've been working with the name Solaris::IPC::Door, but I'm open to suggestions.

Other possibilities include Solaris::Door, IPC::Door, IPC::Door::Solaris.

Replies are listed 'Best First'.
Re: Name for Solaris door library module
by Zaxo (Archbishop) on Aug 24, 2003 at 05:52 UTC

    IPC::Door::Solaris seems best to me. The IPC namespace exists, and IPC::Door fits in nicely. That namespace might contain the public interface, with platform-specific implementation delegated to IPC::Door::Solaris.

    Would you mind describing doors in a more detail? I'm not familiar with them.

    After Compline,

      Thanks for your response. I quote Solaris Internals by Jim Mauro and Richard McDougall:
      A new, fast, lightweight mechanism for calling procedures between processes is available in Solaris: doors. Dorrs are a low-latency method of invoking a procedure in local process. A door server contains a thread that sleeps, waiting for an invocation for the door client. A client makes a call to the server through the door, along with a small (16 Kbyte) payload. When the call is made from a door client to a door server, scheduling control is passed directly to the thread in the door server. Once a door server is finished handling the request, it passes control and response back to the calling thread. The scheduling control allows ultra-low-latency turnaround because the client does not need to waint for the server thread to be scheduled to complete the request.
      Doors were introduced in Solaris 2.5.1, but API was not stabilized until 2.6. (Or so I hear. I have only seen the API on Solaris 8 and 9 so far.)

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://286138]
Approved by Courage
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (5)
As of 2023-12-04 10:27 GMT
Find Nodes?
    Voting Booth?
    What's your preferred 'use VERSION' for new CPAN modules in 2023?

    Results (25 votes). Check out past polls.