Subject: Re: ctrl+alt+del
To: NetBSD User's Discussion List <netbsd-users@netbsd.org>
From: Matthias Buelow <mkb@mukappabeta.de>
List: netbsd-users
Date: 06/11/2001 22:40:42
Greg A. Woods writes:

>Why not just wire a little normally-closed push-button switch between
>DTR and DCD on a spare serial port and have a tiny daemon process
>sitting there with that port as its controlling terminal, waiting for

The whole idea of the ctrl+alt+del issue is that it is an _emergency_
mechanism, usually used when the machine is fucked up due to a bad
kernel or hardware, or completely overloaded.  There is little gain
in having userland tools watch for an abnormal termination request
by the user when they don't even get scheduled, the system is out
of swap, or they crash immediately, or whatever.  That's why in
systems like Lignux, FreeBSD etc. the console driver checks for
the vulcan nerve pinch[1] and runs a kernel space initiated system
reboot.  This key combination method should be the last resort
(apart from the kernel debugger, of course) to bring the system
back into operation, without losing disk buffers in the netherworld.

Popping up the debugger on ctrl+alt+del is often inacceptable,
imho, since in an unsecured environment (such as a public computer
pool), you do not want users mess with kernel data structures.
However, allowing them to safely reboot a workstation (i.e., without
just hitting the switch, which would happen otherwise, no matter
if you forbid it or not, I have done that myself often enough) in
case the system is completely unresponsive or similar, makes sense.
At least you get a clean reboot then, without having fsck to wipe
up the remains.

--mkb

[1] at least on freebsd, iirc, the actual key combination is
configurable, since the reboot action is kindof a target in the
key scancode translation map and that map can be loaded and modified
from userspace.