Path: utzoo!mnetor!uunet!husc6!uwvax!oddjob!ncar!gatech!purdue!i.cc.purdue.edu!j.cc.purdue.edu!pur-ee!uiucdcs!uiucdcsm!grunwald
From: grunwald@uiucdcsm.cs.uiuc.edu
Newsgroups: comp.arch
Subject: Re: Today's dumb question...
Message-ID: <3300026@uiucdcsm>
Date: 10 May 88 14:32:00 GMT
References: <674@cernvax.UUCP>
Lines: 24
Nf-ID: #R:cernvax.UUCP:674:uiucdcsm:3300026:000:976
Nf-From: uiucdcsm.cs.uiuc.edu!grunwald    May 10 09:32:00 1988


VM offers more than protection from errant programs. You can use it to:

	+ do cheap heap based allocation. See the DEC-SRC report by Li
	  and Appel (and someone else) on a heap based allocation
	  scheme which uses page level protection to make heap allocation
	  almost as efficient as stack based allocation.

	+ Process migration. See Zayas (sp?) in the last SOSP. Using
	  demand paging for process migration *even given crappy hardware*
	  was a big win.

	+ Cheap memory copies, less memory fragmentation, etc.

	+ You *need* paging hardware for the software solutions to
	  shared memory hardware.

Also, I want a single-user, multi-programming machine. That means I *still*
need protection -- from myself.

As for caches being expensive. Well, if you presume that SRAM costs drop
faster than cache controller chips, maybe. Even if you put 32Mb in a
system, it's not going to help if you can only afford 32Mb of 150ns DRAM
but you need 25ns SRAM to pump your system.