signals, longjmp, and ANSI C

merriman at ccavax.camb.com merriman at ccavax.camb.com
Fri May 25 09:16:06 AEST 1990


Distribution: usa
Organization: Cambridge Computer Associates, Inc.
Lines: 26

In article <T3O3PX1 at xds13.ferranti.com>, peter at ficc.ferranti.com (Peter da Silva) writes:
> I said: you can't do system calls inside RSX ASTs.
> 
> In article <24581.265ae798 at ccavax.camb.com> merriman at ccavax.camb.com writes:
>> Really? I've never heard of a restriction against making system calls from
>> an asynchronous trap in RSX. I've done it many times with no trouble --
>> I learned the technique from a DEC RSX programming class. 
> 
> It's been too long, so I may have misremembered. This was in 11/M, not M+.
> There were restrictions as to what you could do in an AST, but I guess it's
> not as extreme as that.
You can do anything in a VMS or RSX AST that takes into consideration 
the logical concurrency issues involved in the application. Most native
library and system services are designed to be AST-re-entrant. Some brain-dead
C RTL implementations don't understand what this means.

> 
> Anyway, you sure couldn't longjmp out of one, at least not in 11/M. I know
> that because I wanted to do it for a Forth implementation.
longjump is not an RSX concept. You must have been using something cobbled up 
to mimic UNIX behavior rather than taking advantage of the operating system
features.
> -- 
> `-_-' Peter da Silva. +1 713 274 5180.  <peter at ficc.ferranti.com>
>  'U`  Have you hugged your wolf today?  <peter at sugar.hackercorp.com>
> @FIN  Dirty words: Zhghnyyl erphefvir vayvar shapgvbaf.



More information about the Comp.lang.c mailing list