threads and VMS [Re: dce/rpc "client" api]

Luke Kenneth Casson Leighton lkcl at samba.org
Thu Aug 24 05:34:00 GMT 2000


On Thu, 24 Aug 2000, John E. Malmberg wrote:

> From: "Luke Kenneth Casson Leighton" <lkcl at samba.org>
> 
> > john, could you describe the semantics of the VMS "IO Queue" kernel-level
> > API, if you are aware of it?
> 
> The documentation is online at
> http://www.openvms.digital.com:8000/72final/5841/5841pro.html
> The filesystem stuff is in a different manual nearby.
> 
> It is not a kernel-level API though, it is fully available and supported for
> use by user programs.

good.
 
> It essentially is that for I/O call, including filesystem access, you have
> the option of instead of waiting for the I/O to complete, you pass the
> address of a routine that is executed when the I/O completes.  The I/O
> itself is placed on a queue for the device.

> This completion routine interrupts the execution of the main-line code, and
> blocks or can be blocked by other completion routines, so you have to be
> careful in coding it.  These are known as ASTs.  I remembering that as being
> called an Asynchronous System Trap.

okay.... slightly different from what i was expecting / was described to
me.

is there anything that has the properties as follows:

- create a queue that threads or processes can access.

- data can be added atomically to the back of the queue by any process or
thread.

- data can be read atomically from the front of the queue by any process
or thread.

[shared memory being the most optimal way to implement this type of
structure, under unix].





More information about the samba-technical mailing list