USBメモリ活用講座【基礎編・USBメモリの準備】

< 最終更新日時: 2013-11-19 >

USBメモリについて

写真1・USBメモリ
写真1・USBメモリ

USBとは Universal Serial Bus の略です. 一般に「USBメモリ」と呼べば写真1のような「USBフラッシュメモリ」が代表的で,Windows 2000 以降の OS であれば,PC に挿入すればすぐに使用可能になります. これは,USBフラッシュメモリが USB Mass Storage Class と呼ばれる規格に対応しているので,この規格に対応した OS で使用するときには専用のドライバを必要としないからです. USB Mass Storage Class に対応したリムーバブルメディアとしては,USBフラッシュメモリのほかにも,USB 接続の HDD (Hard Disk Drive),SDメモリカードやメモリスティック,CF カードなどがあります. 本講座では,これらのリムーバブル記憶メディアを一まとめに「USB メモリ」と呼ぶことにします.

ネットブックやウルトラブックと呼ばれる小型のノート PC では,HDD の換わりに容量の小さな SSD (Solid State Drive) がシステムドライブとして使われている場合がありますが,そのような PC では SD メモリカードやメモリスティックを直接挿すスロットが装備されていることが多いはずです. そのような PC を使っている人は,SD メモリカードなどにポータブル化したアプリケーションをインストールすることで,SSD のアキ領域を心配せずに様々なアプリケーションを利用することもできるので,検討してみるのもおもしろいでしょう. とはいえ,本講座で想定するのは USB ソケットに直接差し込むことのできる USB フラッシュメモリです. 今や FDD (Flexible Disk Drive) が搭載されていない PC は珍しくありませんが,USBソケットがない PC はほとんど見当たらないと思います. USB メモリにアプリケーションを入れて持ち運ぶことには,次のようなメリットがあると思いませんか?

Linux などの OS を USB にインストールして,USB から起動するようなことも可能ですが,USB からの起動 (ブート) に対応する PC でないと利用できないことや,起動に時間がかかること,OS に関する知識がそれなりに必要なことなどがネックとなります. 本講座で紹介するアプリケーションだけを USB メモリで持ち運ぶ方法であれば,プリンタなどの周辺機器およびネットワーク接続環境は,PC 側で設定済みのものをそのまま使うことができるのでお手軽です.

USBドライブのファイルシステム

ほとんどの USB メモリは買ってきてパッケージから取り出したら,すぐに使える状態に初期化 (フォーマット) されています. このため,あまり気にしたことがない方も多いと思いますが,Windows PC に挿して使える USB メモリのファイルシステムとして,FAT,FAT32,NTFS,exFAT の 4 種類があります. ただし,exFAT は Windows 2000 以前の OS には対応しておらず,Windos XP でも標準では利用できません (詳しくは exFAT の利用法を参照).

図1・ドライブのプロパティ
図1・ドライブのプロパティ

買ってきたばかりの USB メモリは,FAT または FAT32 のファイルシステムにフォーマットされていることがほとんどのはずです. 自分の USB メモリがどのファイルシステムでフォーマットされているかは,Windows XP であれば次のような手順で調べることができます.

  1. USB メモリを PC に挿入します.
  2. 「マイコンピュータ」を開き,「リムーバブル記憶域があるデバイス」の中から USB メモリに対応するドライブを右クリックします.
  3. 表示されるメニューから「プロパティ」を選んでクリックします.
  4. 図1のようなダイアログボックスが表示されるので,「全般」タブの「ファイルシステム」の項目 (図1の赤枠内) を確認します.

ファイルシステムが FAT である場合には,FAT32 でフォーマットしなおすことを検討してください. 例えば容量 2GB の USB メモリの場合,FAT32 では標準のクラスタサイズが 4KB であるのに対し,FAT では標準のクラスタサイズが 32KB と大きいため,ファイル保存時に実際のファイルサイズよりもディスク上のサイズが大きくなりがちで,ムダが生じやすくなるためです. より詳しいことは,オンラインマニュアルなどで調べてみましょう. Windows XP であれば,次の手順で調べることができます.

  1. [スタート]-[ヘルプとサポート]の順でクリックし,「ヘルプとサポートセンター」を起動します.
  2. 「検索」欄に「FAT32」と入力して検索を実行します.
  3. 「検索結果」として表示される項目から「NTFS、FAT、および FAT32 のいずれかを選ぶ」をクリックします.

また,Microsoft のサポートオンラインの「NTFS、FAT、および exFAT の既定のクラスターサイズ (文書番号: 140365)」で,ドライブのサイズ毎に FAT/FAT32/NTFS/exFAT の標準のクラスタサイズを確認することができます.

現在使用中のドライブ (U:とします) のクラスタサイズを調べるには「コマンドプロンプト」を開いて,ディスクのチェックを実行します (PC の管理者である Administrator 権限がないと実行できないかもしれません).

chkdsk u:

ディスクの検査後に「アロケーション ユニット サイズ」の左に表示される数値がクラスタサイズです. 4,096 バイトならば 4KB,32,768 バイトならば 32KB ということになります. 次の行の「全アロケーション ユニット」の個数 (クラスタ数) もクラスタサイズの指定と関係があります. 詳しく知りたい人は「フォーマットの応用」をご覧ください.

USB ドライブのフォーマット

図2・フォーマットダイアログボックス
図2・フォーマットダイアログボックス

フォーマットに要する時間は,ドライブの容量や種類に依存して大きく変動します. USB2.0 に対応した USB フラッシュメモリであれば数秒で終わると思いますが,数百 GB の USB ハードディスクでは完了までに数時間を要することもありますので,時間に余裕があるときに実行しましょう. ノート PC でフォーマットを行う場合は,あらかじめ AC アダプタを接続しておくことを推奨します.

USB メモリを FAT32 でフォーマットする手順は次の通りです.

警告:フォーマットを実行するとUSB メモリ内のファイルはすべて消去されます. 重要なファイルはフォーマットを実行する前に別のドライブにコピーしておきましょう.

  1. USB メモリを USB スロットに差し込みます. 以下ではドライブレターとして U: が割り当てられたものとして説明します.
  2. 「マイコンピュータ」を開きます.
  3. 「リムーバブル記憶域があるデバイス」の項目内にある,先ほど差し込んだ USB メモリ (U:) のアイコンを右クリックします. メニューが表示されるので,その中から「フォーマット (A)...」という項目を見つけて,クリックします.
  4. 図2のようなフォーマットダイアログボックスが表示されますので,次の 2 項目を設定します.
    • ファイルシステム:FAT32 にします (必須).
    • ボリュームラベル:ドライブを見分けやすいように半角で 11 文字以内の名前をつけましょう (任意).
  5. ここまでの操作に間違いがないか自信がなければやり直しましょう. 大丈夫と確信できるなら [開始] ボタンを押します.
  6. フォーマットするとデータが消去されるといった内容の警告が表示されたら,[OK] をクリックします ([キャンセル] をクリックすれば,まだやり直せます).
  7. しばらくすると完了したことが通知されます.

USB ドライブの性能調査

USB メモリの性能を表す指標として,記憶容量,アクセス速度,耐久性などが挙げられます. 記憶容量は購入時点でも明らかですし,ドライブのプロパティ (図1) や,フォーマットダイアログボックス (図2) で簡単に調べることができます. 耐久性については,USB ソケットの耐久性と,USB メモリ内部の半導体 (フラッシュメモリ) の耐久性が関係します. フラッシュメモリは数万回の消去・書込みで寿命が尽きるといわれていますので,仮に 1 万回を上限として,毎日 3 回の消去・書込みを繰り返すとすれば,約 9 年後に寿命となる計算になるでしょうか.

アクセス速度については,今どきは Windows Vista/7 の「ReadyBoost 対応」に対応しているかどうかが,購入時の目安となります. Windows PC アクセラレータのホワイトペーパーに記載された ReadyBoost の転送速度に関する要件は,表1のように定められています.

表1・Ready Boost の転送速度に関する要件
要件 4KB ブロックランダム読取り 512KB ブロックランダム書込み
必須条件 2.5MB/s 以上 1.75MB/s 以上
推奨条件 5MB/s 以上 3MB/s 以上

Windows Vista では新規に USB メモリを差し込むと,この要件を満たすかを OS が自動でチェックして,要件以上の性能があるときに ReadyBoost として使用するかをたずねてくるそうです.

より具体的にアクセス速度を調べる方法として,ベンチマークソフトを使うことが考えられます. ここでは,フリーのベンチマークソフトとして以下の 2 つを紹介します.

CrystalDiskMark (http://crystalmark.info/):図3

図3・CrystalDiskMark
図3・CrystalDiskMark
インストール
配布されている実行形式のインストーラを起動してローカルハードディスクにインストールします.
起動法
スタートメニューから,[CrystalDiskMark]-[CrystalDiskMark] をクリックして起動します.
計測法
はじめに右上のドライブ選択ボックスで,計測対象の USB ドライブ (U:Removable) を選びます. 次に左上の [All] ボタンを押すと全項目の計測が始まります. デフォルトの計測では 1 項目について 5 回の平均値を求めるので,測定が終わるまで 6~7 分かかりました. 平均を求めるための計測回数 (デフォルトは 5回) や,Sequential Access (シーケンシャル転送速度) を計測するためのファイルの大きさ (デフォルトは 100MB) は,画面上部のボックスで変更することができます. 計測値は MB/s 単位で出力されますが,1×106=1,000,000bytes/s の意味だそうです.
追記
2011 年 3 月に,PortableApps.com の Utilities に,USB メモリにインストール可能な CrystalDsikMark Portable が加わりました.

FDBENCH (http://www.hdbench.net/):図4

図4・FDBENCH 1.02
図4・FDBENCH
インストール
配布されている ZIP 形式の圧縮ファイルをローカルハードディスクやリムーバブルディスク上に解凍 (展開) します.
起動法
解凍 (展開) された実行ファイル FDBENCH.exe をダブルクリックして起動します.
計測法
はじめに右側中段のドライブ選択ボックスで,計測対象の USB ドライブ (U:\Removable) を選びます. 次に左上の [All] ボタンを押すと全項目の計測が始まります. デフォルトの計測では,測定が終わるまで 3~4 分かかりました. ファイルの大きさ (デフォルトは 100MB) は,画面右側で変更することができます. 計測値の Read と Write はシーケンシャル転送時の読取り/書込み速度で KB/s 単位,RandomRead と RandomWrite はランダム転送時の読取り/書込み速度で KB/s 単位だそうです.

ベンチマーク実験

手元に容量 256MB のメモリが 1 本 (以下 USB256 とします),容量 512MB のメモリが 1 本 (以下 USB512 とします),容量 2GB の USB メモリが 2 本 (以下 USB2Ga,USB2Gb とします) あったので,ベンチマークを行ってみました. USB256 は 2003 年頃に発売された USB2.0 対応の日本の一流メーカ品です. USB512 は写真1の品で,メーカは不明ですが,パッケージには "Erase cycles>1,000,000times""Data can be preserved more than 10 years" と,100 万回以上の消去・書込みに耐え,10 年以上データ保存が可能と大層なことが書いてあります. USB2Ga は H20 年度卒業記念にいただいた品で,メーカは不明ですが販売サイトでは ReadyBoost 対応とうたわれています. USB2Gb は日本の一流メーカ品 (生産は台湾) で,パッケージに ReadyBoost 対応と GOOD DESIGN のロゴが印刷してあります. それぞれの USB メモリを FAT/FAT32/NTFS/exFAT でフォーマットして,ベンチマークを行った結果の一部を表2に示します.

表2・USB メモリのベンチマーク結果 (*印の項目についてはフォーマットの応用を参照)
USB メモリ
(容量)
フォーマット クラスタサイズ
[Byte]
CrystalDiskMark2.2[MB/s] FDBENCH1.02[KB/s]
512KB 4KB Random
Read Write Read Write Read Write
USB256
(256MB)
FAT 4K 7.336 3.583 4.083 0.168 7099 1143
FAT32 512* 7.333 3.598 4.071 0.166 6948 1240
1K* 7.325 3.580 4.061 0.167 6783 1184
2K 7.336 3.576 4.079 0.169 7091 1184
NTFS* 512 7.306 3.554 3.766 0.165 6949 1173
USB512
(512MB)
FAT 8K 18.63 5.008 6.707 0.148 17471 3041
FAT32 4K 18.51 5.949 6.670 0.148 17615 3055
NTFS* 512 18.41 5.355 6.555 0.143 17471 2255
USB2Ga
(2GB)
FAT 32K 17.57 1.735 5.375 0.020 17109 2174
FAT32 4K 17.57 1.587 5.432 0.019 16672 2012
NTFS* 2K 17.58 1.639 5.026 0.020 17018 2166
exFAT* 32K 19.30 1.736 8.005 0.020 18101 2215
USB2Gb
(2GB)
FAT 32K 18.69 2.706 4.880 0.033 17707 2705
FAT32 4K 18.27 2.782 4.795 0.033 17519 2208
2K* 19.19 2.537 5.962 0.034 15829 2734
NTFS* 2K 18.27 2.550 4.710 0.034 17661 2604
exFAT* 32K 19.31 2.863 6.394 0.036 18830 2817
4K 19.31 2.863 6.394 0.036 18101 2215

表2では,ReadyBoost の要件に関係する 512KB-Write と 4KB-Read の転送速度 (表1参照) について,必須要件未満必須要件をクリア推奨要件もクリアで色を塗り分けてみました (数値は計測する PC の性能や環境によって変動しますので参考程度に考えてください). ブロックの大きさ (512KB/4KB) や Read/Write の違いで USB メモリによって得意不得意があるらしいことがわかります. 同じ USB メモリでもフォーマットやクラスタサイズの指定によって若干の差があるようですが,体感できるほどではないように感じます (とことんこだわりたい人は以下を読んでください).

USB ドライブのフォーマット (応用)

表2のベンチマークを行うのに,USB メモリを NTFS でフォーマットしたり,FAT32 や exFAT で標準のアロケーションサイズ以外でフォーマットしてみました. 通常の使い方では,そこまでやる必要はないように感じますが,どうしてもやってみたいという人のためにその方法を簡単に紹介します (以下の説明を読んで難しいと感じる方は,やめておいたほうが無難です).

USB メモリを NTFS でフォーマットする方法

図5・USBドライブのプロパティ
図5・USB ドライブのプロパティ

フォーマットを実施する前に,以下の操作を行います.

  1. デスクトップの [マイコンピュータ] アイコンを右クリックして,表示されるメニューから [プロパティ] をクリックして,「システムのプロパティ」ダイアログボックスを表示させます ([コントロールパネル]-[システム] でも同じ操作が可能です).
  2. 「ハードウェア」タブの「デバイスマネージャ」をクリックします.
  3. 「ディスクドライブ」から USB メモリに該当するドライブを見つけ,ダブルクリックします.
  4. USB ドライブのプロパティのダイアログボックスが表示されるので,「ポリシー」タブを開きます (図5).
  5. 「クイック削除のために最適化する」と「パフォーマンスのために最適化する」の 2 項目が選択できるラジオボタンがあるはずですので,「パフォーマンスのために最適化する」を選んで,[OK] ボタンをクリックします.

これで図2のフォーマットダイアログボックスを開いたときに,ファイルシステムとして NTFS が選択できるようになるはずです.

警告:図5で設定を変更する前に,説明をよく読んで内容を理解するように努めましょう. 安全な取り外しを確実に行わないと USB メモリ内のファイルシステムを破損してしまう場合があります.

USB メモリをクラスタサイズを指定してフォーマットする方法

クラスタサイズを自分で指定してフォーマットを行うためには,図2のフォーマットダイアログボックスではなく,「コマンドプロンプト」を開いてディスクの初期化(フォーマット)コマンドである format を利用します. まずは,format コマンドのオンラインヘルプで /FS オプションや /A オプションの項を調べましょう.

format /? | more

FAT32 ではクラスタ数の制限が「65,526<クラスタ数<4,177,918」と書いてあるはずです. これは,大雑把な見積もりとしては (USB メモリの容量)÷(クラスタサイズ) を計算して得られる数値が,65,526 より大きく,4,177,918 未満であれば,そのクラスタサイズでフォーマットすることができることを意味します. あるいは,(USBメモリの容量)÷4,177,918<(クラスタサイズ)<(USBメモリの容量)÷65,526 の範囲で適切なクラスタサイズを選ぶことができるともいえます.

例えば表2の USB256 を標準的な FAT32 でフォーマットしたとき,クラスタサイズは 2,048 バイト,クラスタ数は 127,358個 となります. 二つの数値を掛け合わせると,2,048×127.358=260,829,184Byte≈249×220Byte=249MB となり,おおよそ USB メモリの容量 (256MB) に近い数値となっていることがわかります. 不足分の約 7MB (=256-249) は,どのクラスタに何というファイルが格納されるかといった見出し情報を記憶するテーブルなどに利用されます.

USB256 の場合,256×220÷4,177,918≈64,256×220÷65,526≈4096 ですから,64<(クラスタサイズ)<4096 となるクラスタサイズを指定できることになります. FAT32 で指定可能なクラスタサイズは 512,1024,2048,4096,8192,16K,32K,64K ですので,512,1024,2048 のどれかを選ぶことになります (4096 は試してみなければわかりません). 例えば,U:ドライブをクラスタサイズ 512 バイト,FAT32 でフォーマットするには,次のコマンドを実行します.

format U: /FS:FAT32 /A:512

USB256 をクラスタサイズの指定を変えて,FAT32 でフォーマットした結果を表3に示します. クラスタサイズ 4096 でのフォーマットも試してみましたが「指定されたクラスタサイズは FAT32 には大きすぎます」と表示され,フォーマットを実行することができませんでした.

表3・クラスタサイズとクラスタ数 (容量256MB, FAT32)
クラスタサイズ クラスタ数 クラスタサイズ×クラスタ数(全ディスク領域)
512 503,552 257,818,624Byte≈246×220Byte=246MB
1024 253,728 259,817,472Byte≈248×220Byte=248MB
2048 127,358 260,829,184Byte≈249×220Byte=249MB

表3を見ると,クラスタサイズを小さくして,クラスタ数を増やすほどディスク領域が小さくなることがわかります. クラスタ数が増えれば,見出し情報を記憶するテーブルも大きくしなければならないので,当然の結果です.

ここでは説明のためにあれこれと試しましたが,FAT32 でフォーマットする場合には,標準のクラスタサイズで使用することを推奨します.

exFAT の利用法

exFAT は Windows Vista SP1 から導入されたファイルフォーマットです. ReadyBoost が利用できないようですが,次のような優れた特長があり,SDXC メモリカードのファイルシステムとして採用されています.

ただし,exFAT は Windows 2000 では使用できません. また,Windows XP で使用する場合には更新プログラム KB955704 をインストールして,システムを再起動する必要があります (Windows XP のサポート終了に関する注意 もご覧ください).

exFAT で USB メモリをフォーマットする手順は,USB ドライブのフォーマットの説明とほぼ同様で,ファイルシステムの指定を exFAT にするだけです. しかし,256MB~32GB のドライブで標準として指定されるクラスタサイズが 32KB と大きく,FAT と同様に小さなファイルをたくさん保存する場合にムダが生じます. クラスタサイズを指定して,フォーマットするにはコマンドプロンプトから format コマンドを利用します. 例えば,U:ドライブをクラスタサイズ 4096 バイトでフォーマットするには,次のコマンドを実行します.

format U: /FS:exFAT /A:4096