[Info-vax] Gartner report on VMS future.
VAXman- at SendSpamHere.ORG
VAXman- at SendSpamHere.ORG
Mon Sep 21 16:35:32 EDT 2009
In article <g5idnS20eI-gTyrXnZ2dnUVZ_uidnZ2d at giganews.com>, "Richard B. Gilbert" <rgilbert88 at comcast.net> writes:
>John Wallace wrote:
>> On Sep 21, 12:35 am, "Richard B. Gilbert" <rgilber... at comcast.net>
>> wrote:
>>> Michael Kraemer wrote:
>>>> ChaosLess schrieb:
>>>>> no secrets other than tight programming, lots of hard work writing
>>>>> code that we keep improving. and reworking parts of the libraries as
>>>>> technology improves on unix's for it... how we did async programming
>>>>> in 1990 didn't work well for async qio and ast delivery was a
>>>>> challenge, just like stack unwinding... reworking core components,
>>>>> adding scalable threading, and LOTS of testsuite programs :-)
>>>> well, ISTR people here have claimed that AST's would be impossible
>>>> on any system other than VMS.
>>> Well, an AST is nothing more nor less than an interrupt. It's used for
>>> things like announcing I/O completion. If you do your I/O in a language
>>> like Fortran, the I/O package handles them for you and you don't even
>>> need to know they exist. If you use $QIO you may wish to use ASTs.
>>>
>>> Other systems call it something else and implementation details will vary.
>>
>> ASTs and interrupts are about as similar as knives and screwdrivers.
>> You don't really want to use one where you really wanted the other one.
>
>An AST is an interrupt, delivered at a priority of ASTDEL. I don't
>recall the numerical value of ASTDEL and I'm too lazy to look it up.
>You declare a routine in your program that will service that interrupt
>and your service routine is called at ASTDEL interrupt level. See
>chapter seven of "VAX/VMS Internals and Data Structures" by Ruth E.
>Goldenburg and Lawrence J. Kenah, Digital Press, 1991. ISTR that the
>VMS documentation also discusses the subject in some detail.
IPL$_ASTDEL => 2
>The AST allows your program to do something else while waiting for a
>$QIO I/O call to complete and with no need to loop checking the
>completion status. I used ASTs in my programs about three times in
>twenty years. If you code in a high level language and use that
>language's I/O package, you don't usually need to deal with them at all.
What did you write? Granted, I don't think there's much need for ASTs
in a COBOL program doing payroll but ASTs are used quite often in real
programs regardless of the source lingo.
--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG
http://www.quirkfactory.com/popart/asskey/eqn2.png
"Well my son, life is like a beanstalk, isn't it?"
More information about the Info-vax
mailing list