ソフトウェア

Windows 95ではマウスカーソルをぐるぐると動かすと処理速度が早くなることがあった

by Marcin Wichary

1995年にリリースされたMicrosoftのWindows 95は、Windowsとしては初めてコマンドプロンプトに依存せずグラフィカルユーザーインターフェース(GUI)ベースで操作できるOSで、一般家庭へのPC普及に一役買ったといわれています。そんなWindows 95について、海外のQ&AサイトであるStackExchangeで「Windows 95ではマウスカーソルを動かすと処理速度が上がったのはなぜですか?」という質問が投稿されました。

Why did moving the mouse cursor cause Windows 95 to run more quickly? - Retrocomputing Stack Exchange
https://retrocomputing.stackexchange.com/posts/11533/revisions


質問者が90年代のインターネットを体験できるシミュレーションゲーム「Hypnospace Outlaw」をプレイしていたところ、「ゲーム内でウェブページを読み込むときにマウスカーソルを動かすと、ページのローディングが早くなる」という動作に気づいたとのこと。そして、かつて使っていたWindows 95でも、プログラムのインストール中にマウスカーソルを動かすとインストールの進みが早くなったことを思い出したそうです。質問者はこれは事実なのかを調べるためにGoogleで検索してみたそうですが、有力な情報が得られなかったとのことで、StackExchangeに質問を投稿したというわけ。

by Douglas Muth

この質問に対して、「おそらくそれは単に気のせいでマウスを動かすと画面がリフレッシュされるので、動かさない時よりも進みが早いように見えるだけです」「砂時計のアイコンを動かすと砂が早く落ちるから処理が早くなるというジョークがあったのを覚えています」など、あくまでも質問者の気のせいという回答が寄せられていました。


しかしそんな中、「これはWindows 95のイベント生成方法に問題があり、多くのアプリケーションがイベント駆動型で設計されている事実によるもの」と、マウスカーソルによる処理速度アップを認める回答が投稿されました。

この回答によると、Windows 95が登場した当時のアプリケーションが非同期I/Oを採用していたことに、マウスカーソル移動による処理速度アップの原因があるそうです。同期I/Oのプログラムでは、データを入力してから出力するまでプログラムを停止して処理を待ちます。しかし、非同期I/Oでは、入力されるとプログラムが処理中の状態になり、処理を行っている途中でもプログラムを停止せずに別の処理を実行することができます。そして、処理が完了したらOSが通知するという仕組み。

プリエンプティブマルチタスクはWindows 95で初めて可能になりました。しかし、それ以前のWindows 3.1ではアプリケーション側から擬似的にマルチタスクを可能にさせるノンプリエンティブマルチタスクが採用されていました。そのため、Windows 95初期のアプリケーションは非同期I/Oを採用したものが多いというわけです。

by Abel Cheung

性能がそれほど高くないPCだと、パフォーマンス上の問題から複数の出入力完了がその都度処理されるのではなく、すべての出入力が終了してからまとめて処理されるとのこと。ただし、ユーザーの入力を受け付けると、その時点で保留中の入出力通知を処理し、処理中の状態になっているアプリケーションが進むそうです。そのため、マウスを動かすことでインストールが早くなるそうで、1時間ほどかかりそうなインストールもマウスを動かすことで15分に短縮できると回答者は述べています。

なぜこのような仕様になっているのかはわからないと回答者は述べていますが、Windows 95の開発に携わったレイモンド・チェン氏はMicrosoft公式ブログの中で同様の動作をバグとして言及していました。

MsgWaitForMultipleObjects and the queue state | The Old New Thing
https://devblogs.microsoft.com/oldnewthing/?p=36423


なお、Wordでの印刷時にマウスホイールを動かすことでスプール処理が爆速で進むというテクニックも以前から指摘されていました。この原因について、以下のYOHGAKIさんのブログでStackExchangeでの回答と同様の推察が行われていました。

マウスをぐるぐる回して高速化!? – yohgaki's blog
https://blog.ohgaki.net/a_a_ba_sa_a_a_a_a_a_a_a_bel_e_a

この記事のタイトルとURLをコピーする

・関連記事
Microsoftが唐突に34年前のWindows 1.0をアピールし始めてネットユーザーが困惑、「何が起きてるのだ?」と話題に - GIGAZINE

「Windows 95の画期的なユーザーインターフェースはどのようにして開発されたのか」を詳細にまとめた論文 - GIGAZINE

一番最初のWindows 95のCMムービー - GIGAZINE

あのWindows98がブラウザで動かせる「Windows 98 - Virtual x86」 - GIGAZINE

一時は「死んだ」と思われたWindowsの「ペイント」はまだまだしぶとく生き残る - GIGAZINE

in ソフトウェア, Posted by log1i_yk

You can read the machine translated English article here.