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>