Windows Mobile 用の GPS 地図 - Part 5 - FreeOTFE2010/04/12 22:57

gm_lite 改造版 (ver 0.1.4 ベースにした、rev 5.0) を update しました。

http://www.ne.jp/asahi/net/pockey/program/gm_lite-0.1.4_r5.0.patch.zip

メジャーな update は、ランドマークファイルとして lmark.js というファイル名のものしか読み込めなかったのを、指定できるようにしました。

利用法は、
「Windows Mobile 用の GPS 地図 - Part 4 ― 」
http://gethtmlw.asablo.jp/blog/2009/08/23/4533241
をご覧ください。

ReadGPS.exe と組み合わせて Windows Mobile で使う場合は、ll.js をやり取りするディレクトリを、gm_lite.html 内の Filelljs という変数に設定してください。
Filelljs = "/ramdisk/ll.js";
など。

さて、gm_lite を利用して地図を持ち歩くときに問題となるのが、ディスクのクラスタサイズより小さいサイズのファイルを多量に保存するために発生する無駄領域。例えば 16GB の microSDHC に地図ファイルを保存したいと思っても、地図の実容量は 8GB 分も入らず ディスク満杯、となりがちです。一枚の地図データがクラスタサイズである 16KB より遥かに小さいのが理由です。

クラスタサイズを何とか小さくしたい。そこで利用したのが FreeOTFE という、本来データを暗号化してディスクに保存するためのプログラム。

http://www.freeotfe.org/

これ、Windows Mobile に confidential なデータを保存する場合は必須です。Windows Mobile にも外部ストレージを暗号化する機能がありますが、例えば ROM の入れ替えや初期化を行うと二度と読めなくなるそうです。しかし FreeOTFE ではパスワードさえ覚えておけば大丈夫。

これ、暗号化用ボリュームファイルを作って利用するのですが、この機能を利用して、gm_lite 地図保存用ボリュームのクラスタサイズを小さくします。
まず、PC でボリュームファイルを作ります。microSDHC に入れる場合、FAT32 ですから、最大のファイルサイズは 4GB なので、4095MB のサイズのボリュームファイルを作ります。PC で作る理由は、PC ではこのボリュームファイルのフォーマット時のクラスタサイズの設定の自由度が高いからです。
ボリュームファイルを作ったら、PC 上でマウントしてフォーマットです。DOS 窓 (cmd.exe) でフォーマットするのがコツです。

例えば、g: にマウントした場合、

format g: /FS:FAT32 /A:1024

このボリュームファイルのクラスタサイズを 1KB でフォーマットします。これをアンマウントして、Windows Mobile に移してマウントして使えば、クラスタサイズ 1KB の記憶領域の出来上がり。
クラスタサイズが 1KB なので、無駄領域が気にならない程度で済みますから、16GB の microSDHC の記憶領域がフルに活用できます。
地図データ自体は 16GB フルに使うほどのデータを頻繁に使うことはまずないので、4GB のボリュームで十分。むしろ、各地域別に適切サイズのボリュームを作って地図を保存しておき、その都度マウントして使えば、つねに全地図データを持ち歩く必要もなく、地図ファイルの管理も楽になります。
この場合暗号化の機能は全く使っていませんが、非常に都合のよいソフトです。
本当は iso ファイルを Windows Mobile でマウントできるようなソフトがあればいいのでしょうが、FreeOTFE の機能で十分実用になります。

さらに gm_lite 地図の容量をけちりたい場合、かつ人口密度が低い地域で詳細地図を多量する場合には、いい方法があります。
このような条件の場合は、一枚の png 地図画像に道路も何もない場合があります。この場合 png ファイルサイズは 178 バイトです。そこで、178 バイトのファイルを検索して削除してしまいます。
何の情報も無い地図画像なら、無くても全く問題がないからです。

コメント

_ maqua ― 2010/04/13 21:43

おおおお。
ランドマークファイルが選択できるのはすごい便利になりますねー。

microSDHCのクラスタサイズが大きくて困っていて、FreeOTFEまでは辿り着いたのですが、クラスタサイズが4KBとまだ少し大きかったところでした。
(とりあえず使えるようにはなりましたが)
これをさらに1KBに出来るのは知りませんでした。
すごすぎです・・・。

_ 管理人 ― 2010/04/25 11:31

そうなんです。FreeOTEF みたいなものが free で存在するのはすごいと思います。
DOS コマンドでのクラスタサイズを指定、見つけたときにはたしかに目が鱗でした。
Windows の GUI で容易に出来ないのがむしろ不思議ですね。

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://gethtmlw.asablo.jp/blog/2010/04/12/5013684/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。