On Sat, 4 Feb 2017 02:06:16 +0000, Jesse 1 Robinson
(jesse1.robin...@sce.com) wrote about "Re: BSAM vs QSAM" (in
<by2pr0101mb080862ff8074b4fdc8c84877bf...@by2pr0101mb0808.prod.exchangelabs.com>):

> I'm bowled over by David Noon's post.

Pleased to be of service. ... :-)

> I did not know that QSAM allowed asynchronous I/O operations and have not 
> looked
> into coding requirements.

The operations are synchronous at the application level, but
asynchronous for the physical I/O transfers.

> At the same time I contend that system managed interleaving is not the same 
> thing.
> While it undoubtedly speeds up I/O for 'traditional' QSAM, the application 
> program
> remains in a WAIT during all the background happenings and cannot
independently
> fiddle with bits and bytes pending I/O completion.

The I/O transfers are behind an opaque API. They run asynchronously from
the program, but the program synchronizes every time it uses a QSAM API
(i.e. a GET or a PUT).

With a decent sized buffer pool, most GET requests return immediately
with the required record. The program only occasionally enters a
WAIT/CHECK condition.

Similarly, most PUT operations copy the data record from the work area
into the buffer pool and return to the program immediately. The buffer
will be queued for flushing when it becomes full.

All of the buffer fills and buffer flushes occur quite separately from
the application program. The EXCP macro is a wonderful thing.
-- 
Regards,

Dave  [RLU #314465]
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
david.w.n...@googlemail.com (David W Noon)
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to