Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!pyrdc!grebyn!ckp From: ckp@grebyn.com (Checkpoint Technologies) Newsgroups: comp.sys.amiga.tech Subject: Re: Amiga Resource tracking & protection. Message-ID: <19479@grebyn.com> Date: 19 Mar 90 22:48:04 GMT References: <235.260236d8@waikato.ac.nz> Reply-To: ckp@grebyn.UUCP (Checkpoint Technologies) Organization: Grebyn Timesharing, Vienna, VA, USA Lines: 23 In article <235.260236d8@waikato.ac.nz> hamish@waikato.ac.nz writes: > >I keep reading about people saying that programs should be specially written >to cope with memory protection. Memory protection is a function of the OS, not >the individual programs. To make it easy to run those programs that would >break, then it should be able to be turned on & off, maybe on an individual >basis per program. (ie the OS detecting a bounds fault & getting the data >or writing the data). Well, the problem is that Amiga programs are mostly written with the knowledge that there is no memory protection. So in a sense all Amiga programs are already concerned with memory protection, actually the lack thereof. So when you first make one task's address unreachable by another, that program will crash becayse it had always assumed that it was addressable. In other protected memory systems, the applications are all aware of the memory protection. They must specifically ask for an area of memory to be shared between two or more processes in some way, either by distinguishing between lightweight threads and heavyweight processes, or by creating named shared memory sections, or by opening pipes or message queues of some sort. It's all very formal. In the Amiga, it's all very casual.