The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Re: TUHS digest, Vol 1 #145 - 2 msgs
       [not found] <200304170249.h3H2nQJ8001840@minnie.tuhs.org>
@ 2003-04-17  3:45 ` Larry McVoy
  2003-04-18  1:10   ` Tim Bradshaw
  0 siblings, 1 reply; 3+ messages in thread
From: Larry McVoy @ 2003-04-17  3:45 UTC (permalink / raw)


> I am fairly sure that 4.2BSD had manual pages for mmap, but it didn't
> work.

Right.  Joy left Berkeley and joined Sun and the work got done at Sun.
I'm pretty sure that SunOS 4.0 was the first release with mmap working
as it was described.  I was at Sun for the 4.1 release; 4.0 was the new 
VM system, and it wasn't "new" like "we changed some stuff", it was new
as in everything was rewritten.  The 4.0 VM system had segmap, read/write
were implemented with segmap in the kernel (you did a read, the kernel
mapped page, started a bcopy and would fault on itself if the page wasn't
there or had no TLB entry).  Etc.  I have postscript of the papers on
that, still very good reading if someone wants them.
-- 
---
Larry McVoy              lm at bitmover.com          http://www.bitmover.com/lm



^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] Re: TUHS digest, Vol 1 #145 - 2 msgs
  2003-04-17  3:45 ` [TUHS] Re: TUHS digest, Vol 1 #145 - 2 msgs Larry McVoy
@ 2003-04-18  1:10   ` Tim Bradshaw
  2003-04-18  1:35     ` Larry McVoy
  0 siblings, 1 reply; 3+ messages in thread
From: Tim Bradshaw @ 2003-04-18  1:10 UTC (permalink / raw)


* Larry McVoy wrote:
> Right.  Joy left Berkeley and joined Sun and the work got done at Sun.
> I'm pretty sure that SunOS 4.0 was the first release with mmap working
> as it was described.  

yes, i think so.  I think 3.x had a special-purpose thing which would
only map devices (and maybe only framebuffers...)

> I was at Sun for the 4.1 release; 4.0 was the new 
> VM system, and it wasn't "new" like "we changed some stuff", it was new
> as in everything was rewritten.  

Or alternatively "new" as in "didn't work very well yet".  I remember
there were things you could do (and do quite easily) in 4.0.1 and
4.0.3 which left the system in a state where it thought it had several
K of memory for paging (and a lot of unused file buffers).

--tim






^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] Re: TUHS digest, Vol 1 #145 - 2 msgs
  2003-04-18  1:10   ` Tim Bradshaw
@ 2003-04-18  1:35     ` Larry McVoy
  0 siblings, 0 replies; 3+ messages in thread
From: Larry McVoy @ 2003-04-18  1:35 UTC (permalink / raw)


On Fri, Apr 18, 2003 at 02:10:33AM +0100, Tim Bradshaw wrote:
> * Larry McVoy wrote:
> > Right.  Joy left Berkeley and joined Sun and the work got done at Sun.
> > I'm pretty sure that SunOS 4.0 was the first release with mmap working
> > as it was described.  
> 
> yes, i think so.  I think 3.x had a special-purpose thing which would
> only map devices (and maybe only framebuffers...)

Right.

> > I was at Sun for the 4.1 release; 4.0 was the new 
> > VM system, and it wasn't "new" like "we changed some stuff", it was new
> > as in everything was rewritten.  
> 
> Or alternatively "new" as in "didn't work very well yet".  I remember
> there were things you could do (and do quite easily) in 4.0.1 and
> 4.0.3 which left the system in a state where it thought it had several
> K of memory for paging (and a lot of unused file buffers).

Yeah, I know.  So in SunOS 4.x, the buffer cache still existed but it was
used only for inodes and directories, not for file pages.  There were 
problems for sure with the new VM system.  But remember, it was the first
system that gave you mmap() and it really worked.  I remember sales calls
(I was engineering but I could speak "customer") against HP where they
claimed they had mmap but all that meant was that they malloc-ed the 
memory and copied it.  So if you had N processes mapping the same file
it cost N*P in memory.  SunOS got it right.  And we fixed it as we learned
what was broken.  I'm the guy that made sure we didn't dirty 100% of memory
from one process doing
	
	dd if=/dev/zero of=XXX 

There were a lot of other tuning efforts going on at the same time.

Forgive me for getting all maudlin on you, but at the time, Sun was
the *only* place that was doing real OS work.  Nobody else came close.
I fought to get in there and then I walked around for three years saying
"I'd work here for free if I had more money" before I realized that saying
that had a bad effect on my salary :-)  It really was a fantastic time to
be at Sun.  They were doing anything that was cool in OS, everyone else
was just playing catchup, to this day I have not seen anything like it.
Look around today, is Microsoft doing anything cool?  Sure, they understand
UI and they do a fantastic job at it, but in the OS area they can't begin
to compare with Sun.  Microsoft OS engineers at their best are nowhere near
as good as Sun OS engineers at their worst.  

It was one hell of an education.  It's not clear to me where a new engineer
could go today to get a better education.
-- 
---
Larry McVoy              lm at bitmover.com          http://www.bitmover.com/lm



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-04-18  1:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <200304170249.h3H2nQJ8001840@minnie.tuhs.org>
2003-04-17  3:45 ` [TUHS] Re: TUHS digest, Vol 1 #145 - 2 msgs Larry McVoy
2003-04-18  1:10   ` Tim Bradshaw
2003-04-18  1:35     ` Larry McVoy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).