Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!usc!apple!uokmax!d.cs.okstate.edu!minich From: minich@d.cs.okstate.edu (Robert Minich) Newsgroups: comp.arch Subject: Re: Macintosh OS Message-ID: <1990Jun6.055847.14995@d.cs.okstate.edu> Date: 6 Jun 90 05:58:47 GMT References: Organization: Oklahoma State University Lines: 54 peter@ficc.ferranti.com (Peter da Silva): | The fact that you have a lot of CPU time to manage, or a little, is pretty | much irrelevant. The point is that it's got to be allocated. On the Mac this | is done by hand, by each and every application program. Some programs are | specially written to do a better job of this... these are called Desk ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | Accessories. they have to stay in memory all the time, or you don't have ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | them available. That's why, on the Mac... ^^^^^^^^^^^^^^^ | |> People run out of memory a lot more than they |> "peg the needle" with the CPU... | | ... and on the IBM-PC, too. Because to have a program available at short | notice it has to be pretty much loaded at boot time. Or you have to load | a kludgey context switcher that requires you pre-allocate memory. The reason | the Mac chews memory is that it doesn't have... | |> And those preemptive multitasking systems |> suck RAM like nobody's business... | | Nope. They free it, by making all your tools available at any time, whether | the guy who wrote the application you're using was a good programmer or a | mediocre one. I still have a 512K Amiga 1000, and it's still got more | horsepower left over for *me* than your multimeg Mac-II-whatever. Bzzzt. Lets clear up a couple misconceptions, here. First, the is no requirement that desk accessories be any more graceful about yielding CPU than any application. Second, DA's are not loaded at boot time as implied above. They are loaded on demand. Something that is even more relevant to this whole discussion is that not all programs get CPU while they are in the background. There is twiddleable bit that determines this. This bit was added with the release of MultiFinder. Setting it implies that the program was written to actually do something in the background, acknowledging the limitations of MultiFinder and taking the responsibility to yield CPU time frequently enough that the foreground application does not become sluggish. If this bit isn't set, the program will never get any time in background (exception: unless it has to update the contents of a window). So the whole point is that any background app that hogs the CPU was written irresponsibly, even though it may come from Apple. (MacWrite and MacPaint both did naughty things!) Let me say again that preemptive multitasking is not a necessity for 99% of the Mac community. I won't mind when the Mac does do preemption, though. I have yet to see any reason other than poor programming that cooperative multitasking may be unacceptable for most people. -- | _ /| | Robert Minich | | \'o.O' | Oklahoma State University | | =(___)= | minich@d.cs.okstate.edu | | U | - Bill sez "Ackphtth" |