ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
PC/AT互換機において、ソフトリセット(再起動)をしたり、Microsoft Windowsその他のOSで特殊な動作をさせるためのキー操作。
このコードが書かれた時は、まさかこれで有名になるとは思われていなかったが、この点だけでデビッドは有名になってしまった。
それはMicrosoft Windowsの登場のためであり、Ctrl+Alt+Deleteのキー操作は頻繁にハングアップするWindowsで度々使われたからである。
IBM PCの20周年の祝典でデビッドは、Microsoftの創業者ビル・ゲイツなどIT業界の大物数名とのパネルディスカッションに参加した。ここでCtrl+Alt+Deleteのキーボード操作が話題に上った際、「Ctrl+Alt+Deleteを考案したのは私だ。しかしそれを有名にしたのはビルだ」と発言した。しかしビルは笑わなかったそうである。
Ctrl+Alt+Deleteによって再起動をする、というのは、元々はBIOSによる処理であり、BIOSを使わないシステムでは(本来は)無関係である。
しかし、Ctrl+Alt+Deleteというキー操作は人気があり、PC/AT互換機で動作する殆どのOSで、このキーに何らかの機能を与えている。
MS-DOSのようなリアルモードで動作するOS、Windows 3.0、そしてスタンダードモードで起動されたWindows 3.1では、BIOSのキーボード処理にてCtrl+Alt+Deleteのキー操作が認識される。
386エンハンスドモードで動作しているWindows 3.1と、Windows 95、Windows 98、Windows 98 SE、Windows MeはBIOSを使っておらず、キー操作はWindowsのキーボードデバイスドライバーが認識し、処理をする。
この環境では、再起動の処理はキーボードデバイスドライバーに実装されており、「SYSTEM.INI」ファイルの[386Enh]セクションにある項目「LocalReboot」の設定により設定を変更することができる。
デフォルト設定は何れのOSでも「On」である。但し、Windows 3.1と、Windows 95以降では画面が大きく違っている。
Windows 3.1の場合、青画面に切り替わる。Enterを押して現在のタスクの強制終了するか、もう一度Ctrl+Alt+Deleteを押してソフトリセットするかをユーザーに選ばせる。
Windows 95以降では、現在実行中のプロセス一覧が表示され、応答のないプロセスはその旨を表示する。動作しないプロセスを終了するか、もう一度Ctrl+Alt+Deleteを押してソフトリセットするかをユーザーに選ばせる。
Windows NT系では、ログオン・ログオフに使うキーとなり、ソフトリセットとは無縁となった。
これは、公式にはセキュリティのため、とされている。
なぜなら通常のアプリケーションは定義できないキーの組み合わせ(キーコンビネーション)であり、絶対に通常のアプリケーションが使っていない、唯一のキーの組み合わせだからである。
ログオン画面を偽装するスパイウェア対策を考えると、ログオン画面を表示させるというセキュリティリスクの高い操作には最適のキー操作であり、新たなキー操作を定義する合理的理由はなかった、といった説明がなされている。
そしてWindows NT系では、原則としてCtrl+Alt+Deleteを受け取ることができるのはwinlogon.exeというプロセスのみであるため、例えパスワードを奪おうとする悪意あるソフトウェアを作ろうとしても、理論上はできない。
しかし現実として、どう考えても障害者や高齢者に優しくないキー操作を、強引にこのような重要な箇所に採用したのは、Ctrl+Alt+DeleteからWindowsのハングアップを連想させなくするための必死の抵抗とも考えられる。
Linuxの場合もBIOSは用いていない。キー入力は、キーボードデバイスドライバーが受け持っている。
そして、通常はCtrl+Alt+Deleteを認識すると、SIGINTシグナルをinitに対して送信する。initは、/etc/inittabファイルを参照し、ここに書かれているctrlaltdelアクションを実行する。通常は、次のような設定になっている。
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
しかしながら、このキー操作は誰でも実行可能である。つまり、コンソールに触れる全てのユーザーがshutdownする権限を持っているのに等しく、セキュリティ上好ましくない。このため、最近のディストリビューションでは、初期設定でこの機能は停止されていることが多い。
有効を無効に設定変更するには、rootになってから、/etc/inittabの該当行を#でコメントアウトすればよい。その後再起動するか、次のinitコマンドで/etc/inittabの再読み込みを行なうと、設定が反映される。
init q
コメントなどを投稿するフォームは、日本語対応時のみ表示されます