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 [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message