Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!gatech!bloom-beacon!think!ames!ptsfa!hoptoad!academ!killer!elg
From: elg@killer.UUCP (Eric Green)
Newsgroups: comp.sys.nsc.32k
Subject: Re: cxp/rxp instructions
Message-ID: <1143@killer.UUCP>
Date: Fri, 17-Jul-87 02:11:38 EDT
Article-I.D.: killer.1143
Posted: Fri Jul 17 02:11:38 1987
Date-Received: Sun, 19-Jul-87 07:09:42 EDT
References: <1751@encore.UUCP>
Organization: Bayou Telecommunications
Lines: 30

in article <1751@encore.UUCP>, collins@encore.UUCP (Jeff Collins) says:
> 
> In article <10742@hi.UUCP>, cyrus@hi.UUCP (Tait Cyrus) writes:
>> Here at the University of New Mexico, we will be starting to port
>> GENIX 4.2 to a 32016/32032 board.  I have some questions.
>> 
>> 1) What good are the cxp/rxp instructions?
>> 2) Why can't the "standard" jsr/ret instructions be used?
>> 3) What advantages are there for going through a jump table instead
>>    of jumping directly?

Well, for one thing, it might make relocatable shared librarys easier.  For
example, on the Amiga, to access a shared library, you must first issue an
"openlibrary" command (with the name of the library), which returns you the
address of the start of the library's jump table. Still, an indirect indexed
jsr probably would be faster....
   Of course, libraries would have to consist solely of relocatable code in
order to work such a scheme... or else, relocate them when loaded and map them
into every process space (and un-map them when they're not being used --
on your typical system with a 32-bit address space, it's trivial to dedicate
half of that address space to the kernal and shared libraries). But boy,
wouldn't that make for some back doors! (someone loading in their own "stdio"
library :-). Seems a shame to restrict library-loading to the "standard"
libraries.

 In any event, it wouldn't be difficult to come up with a better
shared-library system than Sys V.3 uses. Like, my 12 year old brother could
probably do better :-).

  Eric Green {ihnp4,cbosgd}!killer!elg elg@usl.CSNET