Date: Fri, 27 Sep 2002 18:47:28 +0200 (MEST) From: porte10@free.fr To: freebsd-hackers@freebsd.org Subject: Runlevels and opcodes Message-ID: <1033145248.3d948ba01aeae@imp.free.fr>
next in thread | raw e-mail | index | archive | help
Runlevels and opcodes
I am a bit familiar with the design of operating systems
but i definitely lack practical experience so please
apologize if i am confusing things ... Anyway i think
the subject is likely to interest our readers !
On most modern operating systems, system calls provide
control and isolation for resource access (memory, drivers...)
and thereby security.
*** But what does prevent a user-level process from executing
wild instructions (RESET, traps, other dangerous instructions
and undocumented features) ?
More generally, does any of you know if some architectures
provide the possibility of designing custom transitions
between processor "runlevels" (usually there are only 2
available, superuser and user modes) ?
E.g.
processor starts in super-user mode ----> thread 1: switch to user-level
with some opcodes masked
----> thread 2: switch to another
user-level
with other opcodes masked
How do context switches occur on existing architectures ?
Is it some kind of "forking" from super-user mode to user mode and
multiple simultaneous user mode contexts (no switching back to
super-user mode) ?
Basically, what are the main differences between (intel, sparc, alpha, ...)
from this point of view ?
Best regards
Phil
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1033145248.3d948ba01aeae>
