From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,fcc2d88d867060e8 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-12-23 09:48:28 PST Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!in.100proofnews.com!in.100proofnews.com!cycny01.gnilink.net!cyclone1.gnilink.net!small1.nntp.aus1.giganews.com!border1.nntp.aus1.giganews.com!intern1.nntp.aus1.giganews.com!nntp.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Tue, 23 Dec 2003 11:48:26 -0600 Date: Tue, 23 Dec 2003 12:48:25 -0500 From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: load and use a ".o" file? References: <132Fb.3462$I02.2996@newssvr23.news.prodigy.com> <6pEFb.418$b77.552@dfw-service2.ext.raytheon.com> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: NNTP-Posting-Host: 24.34.214.193 X-Trace: sv3-ZLCBn2XRfTgIESomsguM1GewegDEE2WS19pMxTBHdwsB7lmobErOZPe5r7CWzUOKO71YUmVXXzMvTLd!y/+CZrExzeVIA3xg/57a5v4Z7hBwlob6WJLkhn7XlGTlEO8thEaV9q2dRWoy0g== X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.1 Xref: archiver1.google.com comp.lang.ada:3763 Date: 2003-12-23T12:48:25-05:00 List-Id: Mark H Johnson wrote: > No, they were actually subroutine calls. The compiler generated slightly > different code for an "in segment" call and a "cross segment" call due > to the indirection. The glue code (to do the lookup) was basically a > system service done by the OS to facilitate activation of new segments. Technically not correct. The compiler could "in line" some local calls, but the binder couldn't. What happened was that when a segment called an entry point for which the local link was null, it trapped. The trap routine tried to snap the link using the current environment, and if it failed, bounced out to the user. You literally could, when an error of this type occurred, change the search paths, or write the missing routine, compile it, then continue from the condition. Done it myself.... > By the way, when I say segment - I mean a segment of the same address > space, not a partition. Think to the 386 processor where you have 32 k > segments in certain processing modes. On Multics, the segments were 256 > Kwords (1 Mbyte) in size which worked quite well in practice. Correct. As I said in another post, there were multisegment files which allowed you to have objects larger than 1 Meg. But in practice they were very infrequently used. -- Robert I. Eachus "The war on terror is a different kind of war, waged capture by capture, cell by cell, and victory by victory. Our security is assured by our perseverance and by our sure belief in the success of liberty." -- George W. Bush