Shared code/libraries

Dave Lukes pdl at root44.UUCP
Thu Aug 18 04:10:14 AEST 1983


>   In seeking models for a clean implementation of shared code, the Burroughs
>   B5000/6000/7000 systems are important.  Although there is a very
>   large assist from the descriptor architecture, these systems have all
>   programs shared, and all share a library, even across languages.  On
>   the B5500 this was a necessity, since there was a maximum of 32K of real
>   memory, and the operating system often took up as much as 4K of that.
>   (It had to arrange for all that sharing, among other things.)

Oh, the message `DSED: MISSING INTRINSIC', followed by an MCP hang still brings
on a rush of nostalgic hilarity.
Sure, the Burroughs people had a lot of excellent ideas, but you try having USER
shared libraries: they've just started to do it and it's foul.
Also, the implementation on the B6000/7000 leaves a helluvalot to be desired.

It works like this: your program does a call through an invalid descriptor,
containing the intrinsic number, which is then diddled by MCP (a.k.a. the OS)
to point to the function (if I understand rightly, this is a bit like Multics).
This is fine except that (of course) the numbers are GLOBAL, so everyone has
to agree to them (somehow) in advance. And you can't just change the intrinsics
either (there's a hook in there to do just that: the CONTROLLER
`CI' command, with all sorts of bells and whistles).

That kinda junk is OK if you like an OS so large the listings are taller than me
(don't forget, they page the OS, since it's trivial with all that hardware
help, so they don't really mind if it's ginormous). However, for those
of us with a slight hankering after elegance: FORGET IT.

		Dave `small is beautiful' Lukes, (...!vax135!ukc!root44!pdl)

N.B.	I suspect MCP is a trademark of Burroughs Corp (Disney notwithstanding),
	CONTROLLER probably is too.



More information about the Comp.unix.wizards mailing list