On Mon, 2005-08-29 at 15:04 -0500, Greg Woodhouse wrote:

[KSB] <...snip...>

> relinked, and possibly even recompiled. Obviously, GT.M doesn't
> behave 
> this way. But notice that if you try and run code that doesn't exist 
> (via DO), you'll get a ZLINK error. (Under static linking, the code 
> could never even be compiled, and so a runtime error would not
> occur). 
> I've never seen the GT.M source code, but for the reasons I've 
> described, it is all but certain that ZLINK is dynamic meaning, among 
> other things, that there is no reason why each process would need its 
> own copy of all the code.

[KSB] Things are actually more complicated.  *All* GT.M linking is
dynamic.  If XYZ.o is an aobject that exists in a shared OpenVMS .EXE
file, or a UNIX .so file, when the operating system loads the .EXE file
or performs a dlopen() on the shared library, the XYZ.o is actually
loaded by the operating system into its virtual address.  However, GT.M
doesn't actually link to it - even though it is already in the address
space - untill a D ^XYZ or a ZL "XYZ".



-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Hardhats-members mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to