Joe

 Just to make sure I am understanding correctly I use GETPOOL/GETBUFF with QSAM 
it will use Asynchronous/overlapped i/o right ?   

-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of Joe 
Monk
Sent: Sunday, March 21, 2021 1:24 PM
To: [email protected]
Subject: Re: Overlapped I/O completion

"The queued access technique provides GET and PUT macro instructions for 
transmitting data within virtual storage. These macro instructions cause 
automatic blocking and deblocking of the records stored and retrieved.
Anticipatory (look-ahead) buffering and synchronization (overlap) of input and 
output operations with central processing unit (CPU) processing are automatic 
features of the queued access technique.

Because the operating system controls buffer processing, you can use as many 
input/output (I/O) buffers as needed without reissuing GET or PUT macro 
instructions to fill or empty buffers. Usually, more than one input block is in 
storage at any given time, so I/O operations do not delay record processing.

Because the operating system synchronizes input/output with processing, you 
need not test for completion, errors, or exceptional conditions. After a GET or 
PUT macro instruction is issued, control is not returned to your program until 
an input area is filled or an output area is available. Exits to error analysis 
(SYNAD) and end-oC-volume or end-of-data (EODAD) routines are automatically 
taken when necessary.

The GET macro instruction obtains a record from an input data set. It operates 
in a logical sequential and device-independent manner. As required, the GET 
macro instruction schedules the filling of input buffers, deblocks records, and 
directs input error recovery procedures. For sequential data sets, it also 
merges record segments into logical records.
After all records have been processed and the GET macro instruction detects an 
end-of-data indication, the system automatically checks labels on sequenti'1l 
data sets and passes control to your end-of-data (EODAD) routine. If an 
end-of-volume condition is detected for a sequential data set, the system 
provides automatic volume switching if the data set extends across several 
volumes or if concatenated da~a sets are being processed. If you specify 
OPTCD=Q in the DCB, GET causes input data to be translated from ASCII to 
EBCDIC."
http://www.bitsavers.org/pdf/ibm/370/OS_VS2/Release_3.8_1978/GC26-3875-0_OS_VS2_MVS_Data_Management_Services_Guide_Rel_3.8_Jun79.pdf

Joe

On Sun, Mar 21, 2021 at 12:16 PM Seymour J Metz <[email protected]> wrote:

> > When I do a qsam get the physical I/O is for 1 block every get just 
> > ups
> a pointer
>
> No. When you do a GET, QSAM not only returns a logical record, it also 
> does whatever housekeeping is necessary. That includes scheduling the 
> I/O for subsequent blocks if necessary. Further, the number of CCWs is 
> not the same as the number of physical blocks. Further, the channel 
> program may include CCWs for multiple physical blocks. The scheduling 
> for QSAM is the same as the scheduling for BSAM. The advantage of QSAM 
> is that it requires less programming, at the expense of not supporting 
> FIND, NOTE, POINT or STOW.
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
> ________________________________________
> From: IBM Mainframe Discussion List [[email protected]] on 
> behalf of Joseph Reichman [[email protected]]
> Sent: Sunday, March 21, 2021 10:21 AM
> To: [email protected]
> Subject: Re: Overlapped I/O completion
>
> I don’t understand what the statement “QSAM does overlapped I/O 
> automatically”
>
> When I do a qsam get the physical I/O is for 1 block every get just 
> ups a pointer
>
> BSAM allows me to do multiple Reads each with their own DECB
>
> So I already initiate lots of physical I/O mainly because I have lots 
> of records or blocks
>
> I find it hard to believe that a qsam get does anything more than read 
> 1 block
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions, send 
> email to [email protected] with the message: INFO IBM-MAIN
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
[email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to