Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!cbmvax!daveh From: daveh@cbmvax.UUCP (Dave Haynie) Newsgroups: comp.sys.amiga.tech Subject: Re: Virtual Memory Message-ID: <6959@cbmvax.UUCP> Date: 23 May 89 17:26:28 GMT References: <8905222150.AA05890@jade.berkeley.edu> Organization: Commodore Technology, West Chester, PA Lines: 47 in article <8905222150.AA05890@jade.berkeley.edu>, 451061@UOTTAWA.BITNET (Valentin Pepelea) says: > This question is aimed at Dave Haynie. > In a previous message, you mentioned that you though about tricks for solving > the Forbid()/Disable() problem using virtual machine emulation. My question is, > how? Without additional research, about all I know that's good for is letting your virtual manager know that you're supposed to be Disable()d. Forbid() actually just increments a counter in the current task structure, and the swapper only swaps if the counter is zero. Thus it's not necessary to trap Forbid()s (it would also be very difficult), since the virtual manager will be called up in the context of the forbidded task. > Thus we do not know what reparative action to take, and thus wether we > are allowed to perform page swapping or not. Knowing whether or not we're in a locking situation isn't a panacea, but it's going to be helpful. For instance, if I get calls to AllocMem() under a swap lock, the virtual manager can return a chunk of non-pagable memory. If I take a age fault while swap locked, I can set out an alert telling of such an occurance, allowing the user to let me go ahead or GURU (such page faults need only occur once -- if a page is faulted under a swap lock, that page should be locked in until fully freed). I have no doubts that some things will break under a virtual system, since we haven't had guidelines on what's proper virtual programming etiquette, or even full facility to deal with such guidelines, MEMF_PHYSICAL or MEMF_NONPAGED (they're different). But there's all kinds of stuff out there that doesn't count on walking damaged system lists while forbidden, so I expect I'll be about as happy with a virtual memory manager as I was when I got boatloads of fast memory and a few things broke because everything wasnt' MEMF_CHIP anymore. The nice thing is it can be switched on and off. > Valentin > "An operating system without virtual memory is an operating system > without virtue." - Ancient Inca Proverb Then again, I haven't found a way to use up 7 megabytes of physical memory yet, so I don't really suppose I have a need for virtual memory myself. Other than the fact it's way cool just to have it.... -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession