Image: メモリ不足のスクリーンショット集 [DOS / Win]

最近、物覚えが少しずつ悪くなっているようないないような。脳の記憶域はもういっぱいなのかもしれません。重要性の低い記憶はここに移しておこう。

そういうわけで(どういうわけで?)、DOSとWindowsを中心にメモリ不足エラーのスクリーンショットを集めてみた。一部は別所から拝借しています。

N88-BASIC(86)

MS-DOSではないが、90年代初頭まで広く使われたPC-98のスタンドアロンBASICから。

「Out of memory in xxx」(xxxはプログラムの実行が中断された行番号)

Image: N88-BASIC(86)

変数宣言などの命令実行時にメモリ(ヒープ領域)に空きがないと、これを表示してプログラムの実行が中断される。原因の多くはユーザーサイドで対処できるものではなく、開発者の想定外の動作やバグによるプログラムの誤作動が原因と考えられます。

「メモリ ガ タリマセン」

Image: N88-BASIC(86)

メインメモリ128KBでDISK-BASICの起動を試みるとこのように表示され、動作が停止する。PC-9801E,Fなど初期の機種が該当しますが、そのほとんどのユーザーは真っ先にメモリを増設するでしょうから、まず目にすることはないでしょう。私は9801RXでこれを見ました。長期間電源を入れず放置して内蔵バッテリが効かなくなったせいで、メモリスイッチの設定が狂ったことが原因でした。

MS-DOS

「プログラムが大きすぎてメモリに入りません.」(MS-DOS 3.3以前)

Image: MS-DOS 3.3

特にDOSゲームはメモリをMS-DOSの限界(640KB - 100KB = 540KB)ギリギリまで消費するものが多く、ハードディスクに作った既存の環境から起動しようとすると、この表示を見ることになります。これを回避するにはCONFIG.SYSを編集してメモリを空ける必要がありますが、この作業は初心者には難しく、また環境によって設定内容が様々で、迂闊に変えると他のソフトが正常に起動しなくなる恐れがありました。このためゲームメーカーはフロッピーディスクにゲーム専用の起動ディスクを作ることを推奨し、ハードディスクからの起動は問題を自力で解決できる上級者向けとされていました。

「~は実行できません.」(MS-DOS 5.0以降)

Image: MS-DOS 5.0

なぜ実行できないのか、これを見た人は戸惑うことに違いない。

Windows 2.1

「ロードできません」

Image: Windows 2.1

これもメモリ不足が原因とは気付きにくい。

Windows上でMS-DOSアプリケーションを起動しようとすると、メモリ不足であればMS-DOS側のメッセージで「メモリ容量が足りません.」と出る。短い文ですが、これならまだ対処のしようがあります。

Image: Windows 2.1

私はDOSはリアル世代じゃないので詳しくありませんが、この時代のWindowsは実質Excel専用OSだったと聞きます。なのでプログラムの多重起動もあまり無かったんじゃないかと。

Windows 3.1

「メモリ不足のため実行できません。いくつかのWindowsアプリケーションを終了してから、やり直してください。」

Image: Windows 3.1

Win3.x, 9xでは画面表示用のデータを保持するGDIやUSERヒープ領域(システムリソース)が64KBしかなく、どんなにメモリを積んでいても、システムリソースが一杯になると動作不安定化をもたらしました。プログラムをちゃんと閉じたつもりでも、バグや異常終了でシステムリソースが解放されないことがあって、度々再起動を強いられたものです。

Windows 9x / Me

ブラウザやメールソフトなどソフトの同時使用、メニューやアイコンの多用など、3.1時代よりもパソコンが高度に利用されるようになったにも関わらず、リソース不足の問題は引き継いでいました。

「メモリ不足のため、このプログラムを実行できません。いくつかのプログラムを終了してから、やり直して下さい。」

Image: Windows 9x / Me

メモリ不足のメッセージがこうして表示されるのはまだマシです。復帰不能の典型パターンは、ダイアログやメニューを開いた瞬間にリソース不足に陥り、プログラムがフリーズしてWindows全体を巻き込むというパターンでした。その時にもブルースクリーンが表示され、当時のユーザーにトラウマを残していきました。

9x/XP時代はWindows安定化や高速化のTIPSを扱った雑誌や本が沢山あって、壁紙に画像を使うな、デスクトップにアイコンを置くな、といったことが書かれていました。

Image: 月刊Windows Start 2003年4月号

Windows XP

Windows 2000, XPではヒープサイズが4MBになり、数十のウィンドウを開いたりしない限りはリソース不足になることはありません。また、スワップメモリ(仮想メモリ)サイズが可変になったため、メモリ不足のメッセージが表示されること「は」なくなりました。代わりに見るようになったのがこのメッセージです。

「仮想メモリ最小値が低すぎます」

Image: Windows XP

初期のXP機はメモリが192MBとか256MBしかなく、セキュリティソフトを入れただけで激重になりました。足りないメモリ容量はハードディスクで補うことになり、何かソフトを操作する度にカリカリカリカリというハードディスクの音を聴きながら待っていたものです。このメッセージが出る頃には苛立ちが頂点に達していることでしょう。

根本的に解決するには物理メモリを増設するなど性能を底上げするしかないのですが、困っている人が相当数いればそれを商機とみる企業もあり、最適化ソフトの「驚速」シリーズはやたら宣伝を見かけました。2011年時点で370万本売れたらしいので、実際好調だったのでしょう。私は512MBに増設してWin高速化XP+などのフリーソフトで凌いでいました。


こうしてみると、随分長いことメモリ不足に悩まされてきたのに、今やそれも古の出来事のようです。ただ、メモリ不足が全く無縁になったかというとそうでもなく、最近はYoutubeのチャットが加速するとブラウザがメモリをバカ食いして重たくなるのが悩みどころです。タブを閉じるという対処療法で一応凌いでいます。


※コメント欄が表示されない場合はdisqusについてJavascriptが有効であることを確認して下さい.