hi this is about a kernel mechanism... a process executes in 'user mode' normally. When it makes a system call it switches to 'kernel mode'. Now in 'user mode' it only as access to the process related data structures and in 'kernel mode',it can do anything. My Question is "Have I got everything right?" and secondly....do some processors have 'execution modes'? If so please give me some pointers to further information in that direction? thanks abhijeet
Yeah.. processors need to support atleast two execution modes to achieve this.. like in Intel processors u have four execution modes and the supervisor mode is used for the kernel mode. When u call a system call, the library call associated with it will call interrupt 0x80 by hand (where system_call entry is set up) which in turn will switch to processor's supervisor mode. You can get the correct information by walking through the code. Just go through arch/i386/kernel/entry.S (system_call) and arch/i386/kernel/traps.c (trap_init) for clear understanding.
HTH,
-Mayuresh
If memory serves me right, On Nov 29, abhijeet wrote :
a:hi a:this is about a kernel mechanism... a:a process executes in 'user mode' normally. a:When it makes a system call it switches to 'kernel mode'. a:Now in 'user mode' it only as access to the process related data structures a:and in 'kernel mode',it can do anything. a:My Question is "Have I got everything right?" a:and secondly....do some processors have 'execution modes'? a:If so please give me some pointers to further information in that direction? a:thanks a:abhijeet a:_______________________________________________ a:http://mm.ilug-bom.org.in/mailman/listinfo/linuxers a: