2005年10月17日

HTテクノロジに恋した昼下がり

それは先週の土曜日のこと。教室で愉快な仲間達と昼飯を食べているとき、コンピュータウイルスなんて簡単に作れるんじゃん!?って話になり、"そんなにゲイツ氏のOSはバカじゃないだろ~"と友人MATが半信半疑だったので…無限にループする簡単なDOSプログラムを作り、CD-ROMを入れるとオートランでプログラム本体と無限にプロセスを増やしていく"バッチファイル"、その他もろもろをWindowsの環境変数を用いて適切な場所に自動でコピーし、次回OS起動時に自動実行される仕組みのウイルスもどきを土日をかけて作った。こんな簡単な仕組みなのに2日もかかってんの?とバカにされそうだが、DOSプロントの動作はWindowsのバージョンごとに微妙に異なり、Windows95/98/Me/2000/XPと幅広いバージョンをサポートしようとすると、"デバック"にそれなりの時間がかかってしまうのだ。そんなこんなで完成したウイルスもどき感染CD-ROM。たかが数百KBのプログラムごときにCD-Rを使うのも勿体ないので、"CDエクストラ"でCDプレーヤーに入れると音楽、PCに入れるとウイルスもどきが自動インストールという仕様にして、友人MATとMCに"絶対にPCには入れない事"と言って、1時限目の授業が始まる前に贈呈した(笑)2時限目が終わり、ランチの時間なんだけど食堂は混んでいて座れないし、5時限目迄時間が空いているので、食堂が空くまで学校のPCでウイルスもどきのデモンストレーションを行うことになった。PCを立ち上げ、私のユーザー権限でログインしてインストール。念のため、実行バッチファイルをスタートアップじゃない場所に移動し、チョチョっと修正して実行。無事に処理が始まり、永遠と終わる事無きプログラムのプロセスが増え続ける。OSがWindowsNT系の場合はショートカットで実行時のタスクの優先率を設定させる事ができるので、それを利用して 低低低低高低低低低高…∞ といった具合でプロセスを手動でストップさせる事ができないようにしているのだが、私がテストした環境では全てでOSが正常シャットダウンできない状況に陥ったのに、学校のPCは普通にシャットダウンできてしまって大失敗(笑)タスクの優先度も正常だし、プロセスも無限に増えていくし、プログラムも永遠と処理し続けているので動作は問題ない。では、こんな過負荷な状況下でシステム正常動作するのは何故だろう?CPUとメモリがシステム優先に働くように設定されている事も考えられるが、一番の原因は使用した学校のPCのCPUが"Hyper-Threadingテクノロジ"対応だったからだろう。どんなにプロセスが増えたって効率の良い仮想並列処理でスイスイ計算し続けちゃう。しかも、その計算はコンピュータ君が得意とする整数演算だから尚更だ(笑)お遊びで作った物だから今から更に改良する気は無いけど、始めてHTテクノロジって素晴らしいと身を持って実感した。というか…レポート書くぐらいしか用いられないコンピュータ室のコンピュータがHTテクノロジ付きなのに、どうして我々が普段利用するコンピュータはHTテクノロジ付いてないんでだろう?負荷から考えて普通逆だよな…

画像クリックで拡大

---
次の日…あれほど"絶対にPCには入れない事"と忠告したのに、ゲイツ氏を信じて贈呈したディスクをPCに入れてしまった友人MATのWindows2000マシーン。シングルCPUだったので制御不能に陥った模様。ゲイツ氏のOSはやっぱりバカだったようです(笑)

投稿者 zeratinman : 2005年10月17日 00:00