Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!cs.utexas.edu!samsung!umich!umeecs!dip.eecs.umich.edu!gilgalad From: gilgalad@dip.eecs.umich.edu (Ralph Seguin) Newsgroups: comp.sys.amiga Subject: Re: Multifinder - Just the Facts, man. Message-ID: <2204@zipeecs.umich.edu> Date: 7 May 90 13:39:58 GMT References: <18410@snow-white.udel.EDU> <70465@srcsip.UUCP> Sender: news@zip.eecs.umich.edu Organization: University of Michigan EECS Dept., Ann Arbor, MI Lines: 45 In article al158305@mtecv2.mty.itesm.mx (Gustavo Cordova) writes: >foreground work there, when you finish your WP job and re-enter the other >program you'll likely find the calculations right where you left them >the last time (ok, maybe an addition or a substraction more); why is this >you might ask? Because ALL mac progs do.... (drum roll)... BUSY WAITING!!! Not true. I got into a discussion with somebody about this. The discussion cleared up a few things for me and for him. I found out the context switch mechanism. While it is cooperative multitasking, it is not nearly as ugly as most other cooperative systems. In multifinder, a program makes a call to GetNextEvent() (or some such similar name I can't remember). If there is no event queued, the process blocks and whatever is on the ready queue is scheduled. This is much easier to add into the OS than preemption. Admittedly, it does have a number of drawbacks. Firstly, if your program does not make any calls to GetNextEvent(), nothing else will get CPU time. Most programs that are written for multifinder now use these calls, so it is not really much of an issue. Still, preemption is better, no matter what you say 8-) Apparently Apple is beginning to see the light and they are going to encorporate it into System 8. >+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ >| Isn't it refreshingly similar the syntax of | My other mainframe| >| UNIX commands and AmigaDOS stuff? :) | is an Amiga :) | >+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ >| Gustavo Cordova | Computer Systems majoring @ ITESM, Mexico | >+=================+ Internet: al158305 @ mtecv2.mty.itesm.mx | >| If at first you | al158305 @ 131.178.1.5 | >| don't succeed, | BitNet: bl158305 @ tecmtyvm.bitnet | >| to hell with it.| al158305%mtecv2.mty.itesm.mx@tecmtyvm | >+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ >-- >disclaimer: These are my opinions, only mine, freely distributable, for > non-commercial use only. See ya, Ralph gilgalad@caen.engin.umich.edu gilgalad@dip.eecs.umich.edu gilgalad@goliath.eecs.umich.edu Ralph_Seguin@ub.cc.umich.edu gilgalad@sparky.eecs.umich.edu USER6TUN@UMICHUB.BITNET Ralph Seguin | In order to get infinitely many monkeys to type 11010 Lighthouse Dr. #234 | something that actually makes sense, you need to Belleville, MI 48111 | have infinitely many monkey editors as well. (313) 697-1048