Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!inuxc!pur-ee!uiucdcs!ccvaxa!aglew From: aglew@ccvaxa.UUCP Newsgroups: net.arch Subject: Re: Linking Time Message-ID: <5100078@ccvaxa> Date: Thu, 22-May-86 09:47:00 EDT Article-I.D.: ccvaxa.5100078 Posted: Thu May 22 09:47:00 1986 Date-Received: Sun, 25-May-86 14:23:01 EDT References: <219@zeus.UUCP> Lines: 18 Nf-ID: #R:zeus.UUCP:219:ccvaxa:5100078:000:884 Nf-From: ccvaxa.UUCP!aglew May 22 08:47:00 1986 ~> Support for linking... Terry Poot mentions the NS32000's module tables. Does anybody know of any applications that actually USE these modes? It seems to me that linking is very much like the problem of how you make sure pointers to objects in LISP remain valid after objects have been moved around by a garbage collection. Either you update all the pointers, ie. have a relocation list of all calls, and patch in the actual address when linking, or you use double indirection - jump tables, and the like. Double indirection is clean, except that it requires doing two fetches to get the actual address of the module being called - unless you are willing to spend some time making caches that do double indirections as fast as single... Andy "Krazy" Glew. Gould CSD-Urbana. USEnet: ihnp4!uiucdcs!ccvaxa!aglew 1101 E. University, Urbana, IL 61801 ARPAnet: aglew@gswd-vms