Bloody Mary - blog

Bloody Mary 別館

Windows7 (64 bit) 環境 RamDisk

お久しぶりです。半年ぶりの登場って、やまだかつてないかも。と思ったら 2008 年にあったわw

先日、メモリの価格を調べていたら、馬鹿みたいに安くなっていたことを知り、 16GB に増設することにした秋の思ひ出です。

SSD の信頼性

友人が SSD に OS を入れたらやけに速ぇーみたいなことを言ってきたのが事の始まりだった。

Crucial m4 CT128M4SSD2 は 1 万 5 千円程度でこれだけ速い。
Read : 415 MB/s
Write : 175 MB/s

他の人の CT128M4SSD2 ベンチマークを見ると、 CrystalDiskMark 3.0 の 1000MB でこれだけの速度を出している。

CT128M4SSD2 の大雑把なベンチマーク
テスト項目 Read [MB/s] Write [MB/s]
Seq 400 180
512K 360 180
4K 25 65
4K(QD32) 210 160

※ 4K 以外は 1 MB/s の単位で切り捨ててみたり
※ 他の人のベンチだしね

私の環境が、 ADAPTEC ASR-2405 ( RAID 1+0 ) 4 台構成 (実質 2 台で Raid0 の速さ ) で以下の通り。

4K(QD32) が HDD の NCQ(Native Command Queuing) を使ってのベンチになる。こちらの方が実際の使用感に近い数字になるようだ。

やはり SSD には敵わない。っていうか 100 倍かよ。強ぇな。

SSD 4 台にして RAID10 を組めば大分速くなるかなぁと思っていた時期もあった。しかし、以下の理由でキャンセルした。

  • SSD の寿命の短さ
  • SSD 64GB の書き込みの遅さ。かといって書き込みの速い 128GB を 4 台も仕入れるにはお金がかかりすぎる。
  • SSD に特化した RAID ボードがない。ないことはないが、品薄すぎてどうにも入手不可だし、 15 万くらいする。無理じゃね?

OS が入っている記憶媒体に、信頼性のない SSD は厳しいように思えた。決してお金がなくて悔しいわけではないw

オンボード RAID で SSD 2 台による RAID1 の構成も考えたが、ネックになるのはやはり信頼性だった。

昔懐かしい i-ram のようなものも考えたが、各社生産中止により、デバイスの入手が困難すぎてどうにもならない。

というわけで現状維持の結論に至ったわけだが、価格.com を調べていたときに、メモリの安さを知った。 16GB で 7 千円って、何?

RAM のベンチは SSD の 10 倍以上だ。テンポラリ用に RamDisk を作ってしまえば、あるアプリに関しては爆速気分を味わうことができるとあり、やってみることにした。

おもむろにメモリ増設。差し込み不具合で再起動 10 回ほど。
orz

で、いよいよ RamDisk を作成する段階になり、 Gavotte Ramdisk をインストールしたわけだが、やたら苦労する羽目になったので、覚書として記事を起こすことにした。

Windows7 (64bit) に Gavotte Ramdisk インストール

※ Windows7 は署名がついていないドライバーは機能しないという余計なお世話仕様がある。

※ Gavotte Ramdisk には署名がついていないが、 4GB 以上を Ramdisk にできるフリーソフトはこれしかないので、何とか使うしかない。

Windows 7 64bit 署名有無のドライバについて
ドライバ 通常起動 テストモード ブート時 F8
署名なし × ×
自己署名 ×
一般の署名

※ ブート時に F8 で起動することで、署名なしでもドライバが利用できるが、面倒すぎるので、自己署名 + テストモードで対応する。(Brue-Ray が再生できないとか不都合生じるらしいが、そんなの関係ねぇ)

※ SetupReadyDriverPlus を使えば F8 起動と同じ効果が得られるので、 Blue-Ray 再生も思いのままだが、セキュリティ的にやや危険な感じはする。しかも MBR 書き換えるし、どうなの。

Windows7 (64 bit) 環境で Ramdisk を使えるようになるまで

※ うまくいかなくても絶望しない

※ ググるのは基本

1. Gavotte Ramdisk をダウンロード

Cドライブ直下に GavotteRamdisk フォルダ作成

2. 自己署名の作成 & インストール

Windows7 SDK (.NET Framework4.0版) をインストールする

※ makecert 等の署名作成コマンドが揃っていれば、わざわざ SDK を入れる必要はない。

コマンドプロンプト(場合によって、管理者権限?) を開いてコマンド入力

  1. cd c:\GavotteRamdisk\
  2.  
  3. makecert -sv rramdisk64.pvk -a sha1 -eku 1.3.6.1.5.5.7.3.3 -r -ss Root -len 1024 -sr localMachine -n CN="rramdisk64.sys" rramdisk64.cer
  4.  
  5. cert2spc rramdisk64.cer rramdisk64.spc
  6.  
  7. pvk2pfx -pvk rramdisk64.pvk -pi test -spc rramdisk64.spc -pfx rramdisk64.pfx
  8. ※ パスワード test にした

以上で rramdisk64.pvk が作成される。

rramdisk64.pvk を右クリック、インストール
証明書ストアは、「物理ストアを表示する」にチェック
[ 信頼されたルート証明機関\レジストリ ] を選択
パスワードは②で入力したもの (test)

3. Gavotte Ramdisk のインストール

コマンドプロンプトを管理者モードで実行。

bcdedit /set testsigning on
(off でテストモードをやめる)

Windows7 を再起動するとテストモードになる。

テストモードが有効になると、デスクトップ右下にウォーターマークが出てうざいことになるが、後で対処。

この辺のタイミングで、 ram4g.reg をダブルクリックしてレジストリに書き込みしておく。

ファイル名を指定して実行から hdwwiz でハードウェアの追加ウィザード
「一覧から選択したハードウェアをインストールする」
「すべてのデバイスを表示」を選択して「次へ」
「ディスク使用」をクリック
「製造元のファイルのコピー元」で rramdisk64.sys のあるフォルダを指定

4. Ramdisk の作成

c:\GavotteRamdisk\ramdisk.exe を右クリックして「管理者として実行」

※ ④の後に再起動してからやる必要があるかも? やれるならそのままやって構わないと思う。

Data Size : 10G と入力した。好みで。
Drive Letter : Z:
Media Type : Fixed Media

OK をクリックして再起動

5. Ramdisk の NTFS フォーマット

やけに時間がかかるようになった起動のあと、 Z ドライブを NTFS フォーマットする (マイコンピュータから Z を右クリックとかで)。

関係ないが、 Z ドライブの Volume は RamDisk にした。

6. デスクトップに出る「テストモード」のウォーターマーク除去

管理者権限のコマンドプロンプトから RemoveWatermarkX64.exe を実行し、 Y を押す。

再起動で消える。

Ramdisk のベンチマーク結果

Memory 増設時のいろいろで、 BIOS 初期化したまま、メモリのオーバークロックとかしていない状態。

SSD の 6 倍にはなった。まあ、容量少ないからテンポラリに使うくらいしかないのだが、 Firefox まるごと移動させて使えば結構おもしろいことになる。

■ 注意事項

テストモードを OFF にするには、コマンドプロンプトを管理者権限で実行して以下のコマンドを実行すればいい。

bcdedit /set TESTSIGNING OFF

ただし、再起動と同時に Gavotte Ramdisk が自己署名であることを見抜かれて強制的に削除される。

やたら時間がかかるシステム復旧のあと、直前に入れた SDK やらなにやらが消えてしまうこともありうる。何故か oblivion の MOD ファイルが消え、セーブデータがロードできなくなったときには殺意を覚えたが……

症状が軽ければ c:\GavotteRamdisk の実行ファイルやドライバが消えるだけで済むが、せっかく苦労して入れた GavotteRamdisk が削除されてしまうので、やらない方がいいだろう。そうだ、一生テストモードと付き合っていくのだ。

やるなと言われるとやりたくなる人間の心理

Updated: 2015/7/29 水曜日 — 13:12:00

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Bloody Mary - blog © 2008 - 2021