| MemTest86 | |
|---|---|
MemTest86(バージョン8.3 Pro)のスクリーンショット | |
| 原作者 | クリス・ブレイディ |
| 開発者 | パスマークソフトウェア |
| リリース | 1994年 (1994年)[ 1 ] |
| 安定放出 | |
| 執筆 | C言語、アセンブリ言語 |
| 利用可能 | 12言語[ 3 ] |
言語一覧 英語、フランス語、ドイツ語、チェコ語、ポーランド語、ロシア語、スペイン語、ポルトガル語、イタリア語、カタルーニャ語、日本語、中国語 | |
| タイプ | ユーティリティ |
| ライセンス | フリーウェア、プロプライエタリライセンス |
| Webサイト | www.memtest86.com |
| Memtest86+ | |
|---|---|
Memtest86+(バージョン6.00b2)のスクリーンショット | |
| 開発者 | マーティン・ウィテカー、サム・ドゥムルメステール |
| リリース | 2004年 (2004年)[ 4 ] |
| 安定放出 | |
| 執筆 | C言語、アセンブリ言語 |
| 利用可能 | 英語 |
| タイプ | ユーティリティ |
| ライセンス | GNU一般公衆利用許諾書、バージョン2.0 |
| Webサイト | www.memtest.org |
| リポジトリ |
|
MemTest86とMemtest86+は、x86アーキテクチャコンピュータのランダムアクセスメモリ(RAM)のエラーをテストおよびストレステストするために設計されたメモリテストソフトウェアプログラムです。テストパターンをほとんどのメモリアドレスに書き込み、データを読み戻し、エラーを比較します。 [ 6 ]それぞれが、RAMが書き込まれた任意のデータパターンを受け入れて正しく保持すること、異なるメモリビットが相互作用する箇所にエラーがないこと、およびメモリアドレス間に競合がないことを検証しようとします。
MemTest86 は 1994 年に Chris Brady によって開発されました。[ 1 ] C言語と x86アセンブリ言語で記述され、すべてのBIOSバージョンに対応しており、 GNU General Public License (GPL)の下でリリースされました。ブートローディング コードは元々Linux 1.2.1から派生したものです。[ 7 ]このプログラムは位置独立コードとしてコンパイルされているため、メモリ領域全体を移動してテストすることができます。[ 8 ]独自の PassMark バージョンにはこの機能はありません。[ 9 ]
MemTest86 2.3以降、このプログラムはLinuxカーネルのBadRAMパッチで想定される形式で不良RAM領域のリストを出力できます。[ 10 ] GRUB2はパッチ未適用カーネルに同じ情報を提供できるため、BadRAMパッチは不要になります。[ 11 ]
2013年2月、オリジナルのMemTest86はPassMark社に売却された。BIOS版はGPLライセンスの下でバージョン4.3.7までアップデートされた。
MemTest86 バージョン 5.0 (2013 年 12 月 3 日) はUEFIブート用に書き直され(最初は UEFI 以外のシステムでは BIOS ブートにフォールバック)、セキュア ブート承認とマウス サポートが可能になりました。すべての UEFI バージョンは独自のフリーウェア ライセンスでリリースされています。バージョン 6.0 (2015 年 2 月 13 日) ではDDR4 RAM のサポートと、 Yoongu Kimらの研究に基づく行ハンマーテストが追加されました。[ 1 ] [ 10 ] [ 12 ]バージョン 8.0 ではUEFI 以外のシステムとの下位互換性が削除され、古いバージョン 4.3.7 を別途ダウンロードする必要があります。[ 10 ]
MemTest86がバージョン3.0(2002年リリース)のまま2年間放置された後、Samuel Demeulemeesterはより新しいCPUとチップセットのサポートを追加するためにMemtest86+というフォークを作成した。
バージョン1.60以降、このプログラムはLinuxカーネルのBadRAMパッチ[ 13 ]で想定される形式で不良RAM領域のリストを出力できます( MemTest86 2.3と同様)。
Memtest86+ の BIOS ベースのバージョンは、バージョン 5.01 (2013 年 9 月) のリリース以降、開発が停滞しました。2020 年 4 月には、BIOS ベースの最終バージョンである 5.31 beta がリリースされ、変更履歴には「多くの修正」が記載されていました。[ 14 ] [ 15 ]
2020 年 5 月、Martin Whitaker は Memtest86+ 5.31 をPCMemTestにフォークし、UEFI サポート、DDR4 およびDDR5 RAM に対応し、現在のすべての AMD および Intel チップセットと CPU をサポートするように書き直しました。2022 年 10 月、このブランチはマージされ、Memtest86+ 6.0 になりました。[ 16 ] [ 17 ]
Memtest86+ は、Debian [ 18 ] 、派生版のUbuntu、Arch Linux [ 19 ]など、多くのLinux ディストリビューションにオプションまたはデフォルトで含まれています。Ubuntuでは、マシンが BIOS モードで起動している場合、デフォルトのインストールの一部として含まれ、GRUB OS 選択メニューに表示されます。[ 20 ] UEFI 対応バージョン 6.0 は、Ubuntu 23.04 Lunar Lobster から入手できます。[ 21 ] Memtest86+ バージョン 5.01 では、 2013 年のコードベースを機能させるためにディストリビューションによる大幅なパッチ適用が必要でしたが、 [ 22 ] 6.0 リリースでは、そのような大規模なパッチ適用は必要ありませんでした。[ 23 ]

MemTest86(+)には2つの開発ストリームがあります。オリジナルは単にMemTest86として知られています。もう1つはMemtest86+として知られており、オリジナルのMemTest86の開発フォークです。MemTest86 4.3とMemtest86+ 5.0までは、画面上の外観と機能はほぼ同じでした。[ 1 ]
これらのプログラムは、 80386および80486ベースのシステムから最新の64ビットプロセッサ搭載システムまで、ほぼすべてのPC互換コンピュータで動作します。新しいリリースごとに、より新しいプロセッサとチップセットのサポートが追加されます。[ 10 ] [ 13 ]
MemTest86(+)は、起動可能なUSBフラッシュドライブ、CD-ROM、フロッピーディスク、または適切なブートマネージャから、オペレーティングシステムが存在しない状態でスタンドアロンの自己完結型プログラムとして実行されるように設計されています。[ 24 ]これは、プログラムがテスト対象のハードウェアを直接制御し、検査のためにできるだけ多くのRAM領域を残しておく必要があるためです。
MemTest86(+)のテストは非常に包括的なので、正常に動作しているように見えるマシンでも、隠れた問題を発見できます。[ 24 ] [ 25 ]多くのチップセットでは、MemTest86はエラー訂正ECC DRAMでも障害をカウントできます(特別な処理をしない限り、エラー訂正メモリ回路は基となるメモリチップの問題を隠してしまう可能性があります)。
エラーの中には断続的に発生したり、格納されるビットの精度に依存したりして、毎回発生するわけではないものもあります。このようなエラーは、長期間にわたって何度も実行することで明らかになることがあります。データ依存のエラーを明らかにするために、テストでは毎回異なるデータを使用するものもあります。[ 26 ]
両バージョンとも、最新のマルチコアプロセッサ、対応するチップセット、およびUEFIをサポートしています。[ 4 ] [ 27 ]
一部のオンボードデバイス、特にiGPUは、MemTest86およびMemTest86+のテスト精度を低下させる可能性があります。
Copyright (C) 1991, 1992 Linus Torvalds 1996 年 1 月 1 日 Chris Brady により修正
メモリの別の領域に自身を再マッピングすることはできません。
キーを押しながらGRUBメニューを表示します。矢印キーを使用して、「Ubuntu、memtest86+」というラベルのエントリに移動します。