Path: utzoo!attcan!uunet!mcvax!hp4nl!phigate!philmds!leo
From: leo@philmds.UUCP (Leo de Wit)
Newsgroups: comp.sys.atari.st
Subject: Re: Multitasking on the ST
Message-ID: <1070@philmds.UUCP>
Date: 12 Aug 89 15:47:58 GMT
References: <8908021826.AA05333@ucbvax.Berkeley.EDU> <15627@watdragon.waterloo.edu> <652@opal.tubopal.UUCP> <471@tw-rnd.SanDiego.NCR.COM> <1066@philmds.UUCP> <675@opal.tubopal.UUCP>
Reply-To: leo@philmds.UUCP (Leo de Wit)
Organization: Philips I&E DTS Eindhoven
Lines: 37

In article <675@opal.tubopal.UUCP> alderaan@tubopal.UUCP (Thomas Cervera) writes:
|In article <1066@philmds.UUCP> leo@philmds.UUCP (Leo de Wit) writes:
|>      In the current situation it is just as well feasible for
|>instance by an application program to thrash the space of the shell it
|>was invoked by. So if you insist on security, you should insist on it
|>right now already.
|
|  Absolutely correct. But using a multi-tasking system this problem will
|multiply.

A so-called multi-problem system 8-) ? B.T.W. I don't see why.

|
|>An MMU alone probably won't hack it; you will probably want a 680x0
|>(x >= 1) to be able to page in new memory (a 68000 doesn't maintain
|>enough internal information to be able to restore correctly from a
|>BUSERR).
|
|  But isn't there any software solution to that ? (I'm looking on primitive
|MMU versions on PDPs where the operating system does a part of context-
|saving work on failed EMT or TRAP recovery). The LSI11 processors are very
|much like the M68k family. Or is this really impossible on 680x0 ? (Remember,
|I'm only a dumb physicist :-) )

The problem is that for instance a page fault can emerge whilst in the
middle of an instruction. Whereas the 68010, 68020 etc. store much
information on the stack at a BUSERR (29 words if I'm correct), the
68000 only stores 7 words, which is not sufficient to resume each type
of instruction.  For instance:

    movem.l   (a3),a2-a5

Since this instruction modifies the contents of a3, it cannot be resumed
when a bus error occurs after a3 has been modified (and the instruction
has not yet completed).

   Leo.