I was wondering if anyone could tell me where variables not are not declared within procedures (aka not on the stack) are stored? And can this address space be changed by the user easily?
Thanks, Adam
----------------------------------------------------------------------- C. Adam Oldham Marconi Commerce Systems Inc. Software Engineer 7300 West Friendly Ave. adam.oldham@marconi.com Greensboro, NC 27420-2087 Phone : 336.547.5952 Fax : 336.547.5079 ----------------------------------------------------------------------- This document contains confidential information of Marconi Commerce Systems Inc. In consideration of the receipt of this document, the recipient agrees not to reproduce, copy, use or transmit this document and/or the information contained herein, in whole or in part, or to suffer such actions by others, for any purpose except with written permission, first obtained, of Marconi Commerce Systems Inc., and further agrees to surrender the same to Marconi Commerce Systems Inc. upon demand. -----------------------------------------------------------------------
Oldham, Adam wrote:
I was wondering if anyone could tell me where variables not are not declared within procedures (aka not on the stack) are stored?
In the data segments (AFAIK there's one for initialized and one for uninitialized data).
And can this address space be changed by the user easily?
I think one would have to write a linker script. I don't know details, but it might not be too hard. After linking, AFAIK, the addresses can't be changed.
Frank
On Wed, 22 Aug 2001, Frank Heckenbach wrote:
Oldham, Adam wrote:
I was wondering if anyone could tell me where variables not are not declared within procedures (aka not on the stack) are stored?
In the data segments (AFAIK there's one for initialized and one for uninitialized data).
And can this address space be changed by the user easily?
I think one would have to write a linker script. I don't know details, but it might not be too hard. After linking, AFAIK, the addresses can't be changed.
You could also include the heap. There you might want to change addresses ( using new and dispose ) to do garbage collection.
Russ
within procedures (aka not on the stack) are stored?
In the data segments (AFAIK there's one for initialized and one for uninitialized data).
And can this address space be changed by the user easily?
I think one would have to write a linker script. I don't know details, but it might not be too hard. After linking, AFAIK, the addresses can't be changed.
You could also include the heap. There you might want to change addresses ( using new and dispose ) to do garbage collection.
Possible built-in late binding support could be another possibility (PIC,threadvar support)