Miscellany Top > Zaurus Scribbles > SD Card Error
Write Date: 2003/6/7
SL-C700 はメインメモリが 32MB しかないので、メモリ不足が起こりやすい。最初から常駐する設定になっているアプリケーションを常駐しない設定にしていても、NetFront など大きなアプリケーションを複数起動しているとメモリ不足エラーが時折起きる。そういったこともあって SunDisk の 256MB SD カードを購入して刺しっぱなしにして、そこに 32MB 程度の swap パーティションを作ってメモリ不足を回避していた。
しかしある日、仕事関係のプログラムを組んでログを取っていると、いきなりハングアップ。仕方ないのでリセットして再起動してみると、起動途中にハングアップ。何度再起動してみてもハングアップの繰り返しになってしまったので、思い切ってハードリセットで完全初期化し、一から環境再構築すべくやってると、SD カードへのアクセス時にエラーが頻発するようになっていた。
どうやら SD カード絡みの問題だったようで、その後 fdisk, mkfs.ext2, fsck.ext2 などを使って SD カードを再初期化してみたり、チェックかけてみたりしているうちに、SD カードが認識されなくなり、完全にお亡くなりなってしまった。
まだ買って1ヶ月も経っていない SD カードなのでメーカーに文句を言うべきか?と思いつつも、Windows マシンで試してみたところ、こちらでは問題なし。ということから、SD 専用のフォーマットツールを使って、SD カードを完全に初期化しなおしてみて試してみると、ようやく SD カードが使えるようになった。
このツールは、SD の元祖 Panasonic が提供している SD カード用のフォーマットソフト。SD カードは Windows で使用していても OS 上の通常フォーマットでは SD 本来の性能を生かせず、アクセス速度が遅くなるらしい。このツールで初期化することで、完全に最適化した形 (出荷時同様) になるとのことである。
これで初期化して Windows 上で全く問題ないことをアレコレ試した上で、再びリナザウに持ち込み mkfs.ext2 してフォーマット。その後色々使い込んで swap も作り直し、辞書ファイルも持ち込んで、以前のようにやってみたが、とりあえずは正常に動いているようだ。結局原因はよく判らないが、ヘタに fdisk かけたことなどが決定的に悪くした原因だったのかもしれない。
ともあれ、SL Zaurus で SD カードを使っていて SD カードのエラーが頻発したり、SD カードが認識されなくなった場合には、SD フォーマッターで一度完全初期化して、その後 mkfs.ext2 し直すという手順が有効だと思われる。