mark@motcsd.UUCP (Mark Jeghers) (04/12/89)
In article <450@jolnet.ORPK.IL.US> acarter@jolnet.ORPK.IL.US (Alfonso Carter) writes: >Is it possible to take a process between two users and switch them? >Say user "joe" is editing a file, and "dan" is playing nethack. >Is it possible to change it so in an instant, joe is playing >nethack, and dan is editing that file? If you had a sort of "process supervisor" which routed and controlled the processes' terminal IO, you could do it. Similar to a window manager. Mark Jeghers Motorola Computer Systems
chris@mimsy.UUCP (Chris Torek) (04/12/89)
In article <450@jolnet.ORPK.IL.US> acarter@jolnet.ORPK.IL.US (Alfonso Carter) writes: >Is it possible to take a process between two users and switch them? >Say user "joe" is editing a file, and "dan" is playing nethack. >Is it possible to change it so in an instant, joe is playing >nethack, and dan is editing that file? That would not be secure. It might be made secure if the switch required that the uids be equal, or the invoker were root. This sort of thing is possible if you replace vhangup with an `fswitch' system call. More generally, cooperating user processes can do this by talking with a server over one of the non-parent/child IPC facilities present in later Unixes. This tends to be less efficient than is desirable. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7163) Domain: chris@mimsy.umd.edu Path: uunet!mimsy!chris
acarter@jolnet.ORPK.IL.US (Alfonso Carter) (04/13/89)
Thanks for the reply mark. At least now I know it can be done. I suppose It means one would have to access the kernel process table and re-arrange it? [probably a stupid question]. I haven't had much luck changing kernel's tables. Thanks for the reply.