m0n0 wrote:
I meant IP instead of PC and yes, it needs to go into Supervisor mode to do that. :)
What is IP ? The name the PC register on x86 processors ?A cooperative multitasking can be implemented cleanly while staying in user mode, it is just a matter of keeping a private stack for each process.
For a preemptive multitasking system, the underlying OS must provide some way to interrupt a process. I don't know if this could be done cleanly via signals. This is the only tricky part.
-- Vincent Rivière