Mac OS X でWindowsのようなブルースクリーンを出す方法
A New Screen of Death for Mac OS X
記事を読んで初めてしったのですが、Mac OS X上で動作するカーネルを"xnu"と言うのですね。
The Mac OS X kernel retains the
panic()
routine and thepanicstr
variable. Whereas the Third Edition UNIX kernel had about fifteen instances of calls topanic()
, there are many, many more—about 1800— in the Mac OS X kernel, which also has a far more complexpanic()
implementation.
(私訳)MacOS Xはpanic()関数とpanicstr変数を保持しています。第3版のUNIXカーネルでpanic()関数を呼び出すインスタンスはおよそ15存在しますが、Mac OS Xの場合は約1800のインスタンスから呼び出されます。
MacOSXではPanic関数を呼び出す仕組みが充実してそうですね。
この記事の後には、実際にカーネル内でパニくった際に表示される画像を
ユーザプログラムから差し替える方法が紹介されています。意図した画面
を出したい時やデバッグなどには役立ちそうですが、我々のような
一般利用者には役立ちそうにありません。
で、最後にBSODへのカスタマイズ方法が掲載されていました。
BSODとはBlue Screen Of Deathの略だそうですが、Windowsが死ぬときの
画面をMacでも再現するというジョークです。ソースコードは同上のリンク
に掲載されています。
Panicが起こるまで待つのか?という疑問がありますが、Panicを明示的に
引き起こすテスト用のコードも紹介されています。
このコードでシステムへの影響はない(はず)です。
で、以下がスクリーンキャプチャ画面です(笑
まぁ、ジョークの域はあくまで超えれないとは思いますが・・・。
0 comments:
コメントを投稿