Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!iuvax!rutgers!njin!princeton!phoenix!mbkennel From: mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) Newsgroups: comp.sys.mac Subject: Re: When will MacOS get virtual memory? Message-ID: <3962@phoenix.Princeton.EDU> Date: 13 Oct 88 00:56:33 GMT References: <1526@oakhill.UUCP> <551@dms.UUCP> <8253@cit-vax.Caltech.Edu> <5721@zodiac.UUCP> <157@s1.sys.uea.ac.uk> Reply-To: mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) Organization: Princeton University, NJ Lines: 43 In article <157@s1.sys.uea.ac.uk> kh@s1.sys.uea.ac.uk (Kevin Hammond CMP) writes: >Having had some experience of working with VM operating systems, I'm >not sure that they really are that wonderful. Demand Paging perhaps, >to avoid writing overlays (you have something a bit like this on the >Mac with the segment loader, I suppose), but VM? The problem is that >if you really need more memory than you've got, you will always thrash >(we have this problem with our Sun workstations, it makes them very >slow), and if you don't you don't really have a problem. Buying more >memory (or writing more efficient programs) usually seems the better >option if you have the choice. Paging from a floppy or slow hard disk >isn't my idea of fun either. Here's a circumstance that often comes up in which paging is useful: Suppose you're running some typical multi-tasking "big" operating systems with many quiescent daemon processes, such as mail servers, print servers or network servers. Individually these programs do not take up enormous amounts of memory, but together, the total amount of memory can be quite significant. But, 99% of the time these programs don't run!!--they just sit there waiting for some event to happen. In that case I'd want their memory to get paged out onto disk so that my ray-tracing software can crunch with all the memory it can get. Of course, if on of the daemons should wake up, there would be some paging delay and slowdown, but most of the time they don't need all their memory, and they only use only 5ms of time anyway, so it's OK. I'd rather have VM so that if I need "just a little bit extra memory" for a little while I can get it, instead of getting a crash. Also, many programs don't use alot of their memory (whether in program code or data) for significant portions of the time. By paging out this temporarily unused memory, you can let other backround processes get some RAM. For very large compute-intensive jobs, however, VM cannot replace real live chips. BTW I believe that some models of Cray supercomputers do not have virtual memory. But I believe all ETA supercompters do. Matt Kennel mbkennel@phoenix.princeton.edu