[comp.sys.amiga.tech] VM & history

mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) (05/31/89)

In article <360@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes:
<It's sad to see people get confused about such recent history. Your
<statement about RAM availability was true for microprocessors and some
<mini's but certainly not mainframes (or even all minis).

While I agree with almost everything Doug said, I want to be pedantic
(again), and correct some minor points. Seems to be a habit these
days...

<Berkeley Unix has had virtual memory since 1979. Prior to that, on
<PDP-11's, it absolutely *had* to swap (no paging support in hardware),
<so it wasn't a "poor memory model" at the time, on that hardware. 

Right, but the details are wrong. And you know it:

<BTW, the PDP 11 had 8 segment registers (8K each) defining each 64K
<address space, so shared memory on 8K boundaries could have been done.

Yup. It was done. I forget the details, but the result either wasn't
enough faster than stock Unix to warrant the extra kernel space
(especially when people were counting unused kernel words on the
fingers of one hand), or it was slower than stock Unix. Having at most
24 pages (8 text, 8 data & 8 stack) doesn't make much difference;
especially when you had to do a lot of the work by hand. Oh yeah - the
physical segment boundaries on the '70 (the one I know best) were 64
bytes apart, not 8K. However, you had to have them 8K apart in your
virtual addres space.

<>If they had processors able to access 4 Gigabytes of physical ram, then Unix
<>too would enjoy the superior functionality available in single-addressing space
<>operating systems.
<
<This is a really bizarre (as well as false) idea.
<	A) Unix had 4Gig addressing on VAXen in 1979

Nope, it was only 3 Gig. DEC reserverd 1Gig for their own use. And
even those three were split: 1 Gig for user code/data, 1 for user
stack, and 1 for the system. The hardware only had one map for the
system/reserved space, and it wouldn't context switch it for you.

And you shouldn't be so down on any of the memory schemes. Physical,
swapped and paged address spaces all have their places, depending on
the needs of the job at hand. I happen to think that for the Amiga,
_when it was announced_, physical memory was the way to go. Hard disks
were still somewhat rare, and the extra performance physical gives you
was a win. And none of the competion had multi-tasking, much less
"protected address spaces", so they all did the same thing when a
running program died: rebooted.

<>I stand by the model of the ideal real-time message-based operating system.
<
<Ok, sure, you're on solid ground there!

Um, yeah. But I can't think of a commercially succesful OS based on
that model, can you (Multics I don't consider a commercial success)?

	<mike
--
All around my hat, I will wear the green willow.		Mike Meyer
And all around my hat, for a twelve-month and a day.	mwm@berkeley.edu
And if anyone should ask me, the reason why I'm wearing it,	ucbvax!mwm
It's all for my true love, who's far far away.		mwm@ucbjade.BITNET

doug@xdos.UUCP (Doug Merritt) (05/31/89)

In article <25091@agate.BERKELEY.EDU> mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) writes:
>While I agree with almost everything Doug said, I want to be pedantic
>(again), and correct some minor points. Seems to be a habit these days...

Thanks, Mike. (I could just start sending my articles by you for
editorial assistance prior to posting, if you like :-) :-) :-)

Seriously, your corrections are always interesting.

>In article <360@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes:
><BTW, the PDP 11 had 8 segment registers (8K each) defining each 64K
><address space, so shared memory on 8K boundaries could have been done.
>
>Yup. It was done. I forget the details, but the result either wasn't
>enough faster than stock Unix to warrant the extra kernel space

Sure, everything you could imagine was done by somebody. Tom Ferrin had
a 20Meg RAM disk that he mounted root and /tmp in. Eric Schmidt implemented
a LAN (sort of) between Berkeley's two Unix machines over a 1200 baud
dedicated line. Dave Mosher designed and implemented a network file
system based on virtual inodes. Bill Jolitz hacked the kernel to use
overlays to squeeze it onto a tiny machine. I hacked up a shell that
implemented Korn-shell style command line editing (before there was a Korn
shell, of course), and designed shared library support, supervisor mode
servers, and lightweight thread enhancements. Bob Toxen and I added
'new tty'-style kill and erase processing to the tty driver. Real time
features like the shared segments you mention, and a 'lock process in
physical memory' system call were added by various people independently.
Etc, etc.

All this and more was done in V6 Unix on PDP 11's. But these things
were done experimentally, they weren't folded back into standard V6.
(With the exception, I guess, of Schmidt's Berknet, which he claimed
was just a hack that *shouldn't* have been released.)

>physical segment boundaries on the '70 (the one I know best) were 64
>bytes apart, not 8K. However, you had to have them 8K apart in your
>virtual addres space.

I'd forgotten, thanks.

><	A) Unix had 4Gig addressing on VAXen in 1979
>
>Nope, it was only 3 Gig. DEC reserverd 1Gig for their own use. And

I decided not to get into that in the interest of brevity; guess I
should've expected it to get nitpicked!

>And you shouldn't be so down on any of the memory schemes. Physical,
>swapped and paged address spaces all have their places, depending on
>the needs of the job at hand. I happen to think that for the Amiga,
>_when it was announced_, physical memory was the way to go. Hard disks

Sure. That's actually what I meant, I must not have been clear.

><>I stand by the model of the ideal real-time message-based operating system.
><
><Ok, sure, you're on solid ground there!
>
>Um, yeah. But I can't think of a commercially succesful OS based on
>that model, can you (Multics I don't consider a commercial success)?

Ok, how about AmigaDOS? How about the the Smalltalk kernel? What
about Mach? Or Intel's real time OS, RMX (hmm...it supports message passing
but actually I'm not sure that it's *based* on that).
	Doug
-- 
Doug Merritt		{pyramid,apple}!xdos!doug
Member, Crusaders for a Better Tomorrow		Professional Wildeyed Visionary

"Welcome to Mars; now go home!" (Seen on a bumper sticker off Phobos)