Path: utzoo!attcan!uunet!know!zaphod.mps.ohio-state.edu!usc!cs.utexas.edu!yale!cmcl2!adm!smoke!gwyn From: gwyn@smoke.BRL.MIL (Doug Gwyn) Newsgroups: comp.sys.apple2 Subject: Re: Amiga Bashers Message-ID: <13962@smoke.BRL.MIL> Date: 28 Sep 90 21:10:19 GMT References: <5588@mace.cc.purdue.edu> <1266.26fbd120@desire.wright.edu> Organization: U.S. Army Ballistic Research Laboratory, APG, MD. Lines: 21 In article cs4w+@andrew.cmu.edu (Charles William Swiger) writes: >Without arguing ovcer the exact meaning of multitasking, the //gs does >not have the ability to multitask seperate processes. ... The reason that >the //gs cannot do more is because it lacks the memory management unit >required to provide "memory protection." This isn't really correct. The IIGS does have a centralized memory management facility that is capable of keeping track of memory utilized by multiple concurrently resident processes. Hardware protection would be necessary only for "demand paging", which even UNIX did not require (until quite recently). While it is true that the lack of protection permits a coding error to affect other processes, that is already true even for "desk accessories", as many of us can attest. It is not an issue for correct code. Note also that interrupts are not necessary for multitasking; the scheme known as "preemptive scheduling", such as is used in a time-slice scheduler, requires regular interrupts, but they are not necessary for a voluntary scheduling scheme where processes are suspended only at the system-service request point. (The "Blit" family of multitasking terminals relies on this method, and it works quite well.)