Path: utzoo!attcan!uunet!mcvax!enea!kth!draken!tut!santra!kampi!jmunkki From: jmunkki@kampi.hut.fi (Juri Munkki) Newsgroups: comp.sys.mac Subject: Re: Virtual memory init Message-ID: <18721@santra.UUCP> Date: 16 Jan 89 00:21:26 GMT References: <1542@csuna.UUCP> <7124@netnews.upenn.edu> <13566@cup.portal.com> Sender: news@santra.UUCP Reply-To: jmunkki@kampi.UUCP (Juri Munkki) Organization: Helsinki University of Technology, Finland Lines: 30 In article <13566@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes: >What happens if I get a page fault in the middle of a SCSI operation? >For instance, suppose my code does this: > > SCSIGet(); > SCSISelect( id ); > SCSICmd( cmdBuf, 6 ); > >and the memory pointed to by cmdBuf has been paged out. How does the >init manage to read that page off the disk? Good question! I haven't seen the product and all I know about is what has been written about it on Comp.sys.mac, but I guess they could have patched FSRead and FSWrite so that the calls make sure that they are operating on available pages. A really long read or write would then have to be split into several smaller segments so that 1 or 2 megabytes of RAM would be enough. Along the same lines: how do they know which parts of the system heap they can swap out. I thought about writing a virtual memory INIT, but I couldn't think of a way to let it swap out parts of the system heap. We're definitely going to try the product at our university. I might even get one myself, if I can't get a NeXT this year. They should sell it for $150...I think they'd make a lot more money that way... _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._ | Juri Munkki jmunkki@hut.fi jmunkki@fingate.bitnet I Want Ne | | Helsinki University of Technology Computing Centre My Own XT | ~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~