Subject: | |
From: | |
Reply To: | |
Date: | Fri, 12 Feb 1999 11:55:35 -0800 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
Michael Smith (aka [log in to unmask], so he doesn't get this reply directly) writes:
> happens when the program in question is not the one being run but is
> actually being CREATEd by the program we are running?
...
> I think that the processes being CREATEd will use it's own internal limits
> (specified at :LINK time) or if none are specified it will use the system
> limits (configured in :SYSGEN). But if that is true, it would mean in order
> to change the limits on a program meant to run as a child, you would have to
> do an :LINKEDIT ALTPROG. This would also mean that you couldn't have
> different versions of the program running with different limits. It just
> doesn't sound right, but maybe that's what is happening.
It's mostly right...you overlooked that the CREATEPROCESS intrinsic
allows you to specify a value for NMSTACK and/or NMHEAP. If you do that,
it overrides the values (if any) in the program file and the system
default values.
Note:
IIRC, the CREATEPROCESS documentation fails to note that the
values for items 26 and 27 (NMSTACK and NMHEAP) are the *adddresses*
of the values, not the actual values. And, for CM calls, they're
"word" addresses, not byte addresses.
--
Stan Sieler [log in to unmask]
http://www.allegro.com/sieler.html
|
|
|