Subject: Re: userid partitioned swap spaces.
To: None <tech-kern@netbsd.org>
From: Ian Dall <Ian.Dall@dsto.defence.gov.au>
List: tech-kern
Date: 12/17/1998 14:46:24
woods@most.weird.com (Greg A. Woods) writes:

  > [ On Thu, December 17, 1998 at 10:56:07 (+1030), Ian Dall wrote: ]
  >> Subject: Re: userid partitioned swap spaces.
  >> 
  >> It was there in SysVr2.2. As far as I know it hasn't been taken out.

  > Hmm.... strange.  My AT&T 3B2's never over-committed virtual memory
  > vs. swap, not with 3.0, nor 3.1, nor 3.2, and I'm pretty sure I've never
  > seen a SysVr4.0 machine that would either.

I think demand paged virtual memory was optional before V4. Some vendors
made purely swapping systems a la edition 7. I don't know what kind
of system 3B2's had. In any case, the SysVr2.2 system I was familiar with
only allowed 16MB virtual memory so "huge sparse arrays" were not really
an option.

  > Perhaps we're talking about two different concepts.

Possibly. I think of two paridigms. In the first RAM is a cache for
disk and in the other disk is overflow storage (backing store) for
RAM. I tend to think of the latter as being the "overcommit" strategy
since the former never allows overcommitting, but now I think about
it, that is not quite right. The overflow strategy doesn't *have* to
allow overcommitting so long as all virtual memory is mapped to either
physical memory or to swap.

SysVr2.2 certainly had COW fork which means processes can require more
swap at some arbitrary point when they touch a page, not just when
they sbrk. Of course it is *possible* to allocate physical memory or
swap to cover the worst case, but it is not my understanding of how
things worked.

  >   Noriyuki Soda <soda@sra.co.jp> writes:
  >> Almost all commercial UNIX are non-over-commiting systems,
  >> so this should not be problem.

  > Indeed.  That's been my experience, with the exception of AIX and early
  > versions of Sequent Dynix and Pyramid OSx, and I suppose SunOS-3 (all of
  > which leaned far more towards 4BSD than any other commercial Unix, even
  > SunOS-4).

Yes, but 4.xBSD (x < 4) were non-overcommitting systems. Your understanding
of which were which is completely the opposite of mine!

Not that it really matters what various historical systems did except
when someone brings up history as a reason why things should
stay-the-same or revert.

Ian