[Info-vax] OpenVMS async I/O, fast vs. slow

Arne Vajhøj arne at vajhoej.dk
Tue Nov 7 19:23:26 EST 2023


On 11/7/2023 11:27 AM, Johnny Billquist wrote:
> On 2023-11-07 01:18, Arne Vajhøj wrote:
>> On 11/6/2023 6:31 AM, Johnny Billquist wrote:
>>> Read ahead is something that the system can easily do both for normal 
>>> I/O and memory mapped I/O. It's just a question of speculative reads 
>>> assuming some pattern by the program. Most commonly that you are 
>>> reading files sequentially from start to finish.
>>
>> $QIO(w) and $IO_PERFORM(W) could.
>>
>> But at least for $QIO(W) then I would be very surprised if it did. It is
>> from before VIOC/XFC so originally it did not have anywhere to
>> store read ahead data. VMS engineering could have changed
>> behavior when VIOC/XFC was introduced. But I doubt it.
>>
>> $IO_PERFORM(W) maybe. But I think the spirit is still
>> "do exactly what the developer asked for and nothing more".
> 
> I'd say memory mapped I/O falls in the exact same category here.

Not exact.

$QIO(W) and $IO_PERFORM(W) read means read these X bytes
now and write means write these X bytes now.

$CRMPSC and memory access read means read at least
these X bytes now and write means write these X bytes
either when convenient or when explicit flushed/deleted.

Arne





More information about the Info-vax mailing list