page@swan.ulowell.edu (Bob Page) (06/10/88)
A few people have misunderstood my remark about making the Amiga OS better protected from errant tasks. I was not comparing it to any other micro OSs, as these all have the same problem. I was comparing it to mini- and larger computer OSs where an errant task will crash and burn itself, but not take the rest of the the machine with it. People put up with it in OSs like the Mac and MS-DOS because in effect, when one process crashes, you only lose that one process. On the Amiga, the problem is magnified by the multitasking capability - if I have something running, doing real work, and I lose it because some other task brought the machine down, it looks bad not only for that program but also for the Amiga. There are three solutions: 1. don't run more than one task (not possible if you think about the device drivers, etc already running). 2. run only well-behaved programs that don't crash (also not possible, since even the file system can crash on inconsistent data). 3. protect the tasks from each other, so an errant task will crash (core dump, whatever) and leave the others alone. This is not possible today, and would only be possible in the future if the OS provided the protection. This behavior has dramatically affected the way I work on the Amiga. If I'm doing anything critical, I won't even touch the machine until my critical task finishes. Call me paranoid, but I used to get burned multiple times during a session at the machine; since I've changed the way I work with the Amiga, my crashes have been much less frequent. This is just doing normal things, editing files, using a terminal program, etc. This also means I use programs where I have the source code, any time I can. Except for the CBM-supplied executables (which I replace with code I have source for when I can), the only things I use that I don't have source for are WShell (because I know Bill Hawes and trust his code) and the Manx C package (I trust it more than I used to, but won't trust it completely until I either have source :-) or a PD C system (with source debugger) with source code). If I *have* to use something I don't have source for (like Soundscape) I make sure nothing else is running first, so I won't lose the other tasks in case this one blows up. I'm not advocating Mac OS or UNIX or anything else. I think the Amiga OS is great and would like to continue to use it. I just want it to protect the tasks from killing each other or the entire machine. ..Bob -- Bob Page, U of Lowell CS Dept. page@swan.ulowell.edu ulowell!page