Article View: comp.sys.amiga.tech
Article #4716Memory Protection!
From: hamish
Date: Sun, 05 Aug 1990 22:42
Date: Sun, 05 Aug 1990 22:42
50 lines
3292 bytes
3292 bytes
Ok folks, how about another go at getting a little bit of hardware protection
for the amiga, and a bit of resource tracking.
So far objections are because of
1 resource tracking will make things slower.
Well ARP doesn't seem to be suffering too much does it? And that
has had resource tracking since day one. IMNSHO it would be a better
OS if an errant program could be cleaned up after it was killed off.
2 People don't use MEMF_PUBLIC for messages.
Well if we make all unallocated memory to be non-readable and
non-writable that would probably catch a few errant pointers. The
code hunks could be make read-only for all tasks and if people are
using a code hunk to hide a message port (ie for data) then they
deserve to have their program curl up and die on them.
data hunks and allocated data could be rw for the owner and ro for
everybody else. After all how many programs actually change a message
once it is read?
The fact that we must pass a pointer either means that the library
routines for sending a message must be able to write to the message
port being sent to, or the message port must be rw. I favour the
library routine to be able to get rw access as this would cover
a lot of errant programs stamping on people message ports.
Write protecting the data pages is probably the only change that
would make the system a little slower at swapping tasks, but it
would make a really stable computer.
3 Write protecting ram based libraries and bottom of memory.
Well I don't remember any good reason for not write protecting
these. From what I gather the enforcer option does the second,
but what about the first. After all who needs to write to libraries
apart from routines (supposedly through the OS) that patch them.
OK. I've thrown the cat amongst the pigeons. Can anybody now convince me, and
themselves that it won't work. How hard can it be to change LoadSeg() and
UnLoadSeg() to make code hunks ro?
--
==============================================================================
| Hamish Marson | Internet hamish@waikato.ac.nz |
| Computer Support Person | Phone (071)562889 xt 8181 |
| Computer Science Department | Amiga 3000 for ME! |
| University of Waikato | |
==============================================================================
|Disclaimer: Anything said in this message is the personal opinion of the |
| finger hitting the keyboard & doesn't represent my employers |
| opinion in any way. (ie we probably don't agree) |
==============================================================================
Technical Details
Message-ID:
<1145.26bd4989@waikato.ac.nz>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!samsung!munnari.oz.au!uhccux!virtue!hamishShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!samsung!munnari.oz.au!uhccux!virtue!hamish From: hamish@waikato.ac.nz Newsgroups: comp.sys.amiga.tech Subject: Memory Protection! Message-ID: <1145.26bd4989@waikato.ac.nz> Date: 5 Aug 90 22:42:16 GMT Organization: University of Waikato, Hamilton, New Zealand Lines: 50