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
