Let me describe to you the system we have here at the University of
Michigan. It is not perfect, but I think it satisfies most people
most of the time.
CAEN (our sysadmins, Computer Aided Engineering Network) provide
two programs on Unix workstations: babysit and rmproc.
'babysit' starts a process under a login monitor. The process is
automatically nice'd, and then when a user logs in to the workstation
(at the console, not via remote login) the 'babysit' program automatically
sends a STOP to its children. The children do remain resident in
memory, however.
After the user logs in, a message is sent to his xterm that indicates
that so-and-so's programs are running under babysit and they are not
taking up ANY CPU time.
The 'rmproc' program gives the console user control over all background
processes (except for system processes, of course). The 'rmproc' program
will let the user:
- re-nice the process to something lower (mainly for processes NOT
running under babysit)
- stop the process (if not already stopped by babysit)
- kill the process (even if it doesn't belong to the login user)
The important points of this implementation IMHO are:
1) CAEN endorses the 'babysit' and 'rmproc' tools so they do not appear
to be cracks or otherwise illegal to users. A program running under
'babysit' is "legitimate" in the eyes of users because they know
it will suspend itself when a console user logs in.
2) The user is notified at login time as to what background processes
are running under babysit. Thus, there is no "deception".
3) The login user has control over the entire machine via the 'rmproc'
program.
The 'rmproc' program is still used a bit too much in my opinion, as you
do get the effect of users really wanting control over the entire machine
(even if DESCHALL is using 0% CPU and a whopping 150K of RAM). I'd like
to see CAEN make more of an effort to explain this aspect (and about
virtual memory...if the 150K really is needed, DESCHALL will be swapped
out because it's stopped, etc.) Still, the users' illusion that they have
made great gains by killing DESCHALL is enough to keep everyone happy.
The bottom line: getting sysadmins to implement a sound policy on
running background programs (i.e., something like implementing babysit
and rmproc) will go a long way towards keeping everybody happy, not
only for DESCHALL but for the future as well.
Heck, you may even want to get sysadmins to contact CAEN and ask for
the above programs (http://www.engin.umich.edu/caen).
Andrew. asterian@umich.edu | Help crack DES in your computer's spare time!
----------------------------| http://www.frii.com/~rcv/deschall.htm
For the teddy bear who has |----------------------------------------------
everything, a person. | Me: http://www-personal.umich.edu/~asterian