警告メッセージ

Howtoは、Armadilloシリーズを有効に活用するための参考資料です。使用ソフトウェアのバージョンなど諸条件の差異によって、記載内容と実際の動作が異なる場合があります。また、すべての機能検証や長期の動作試験を行ったものではありませんので、必ずご使用目的に適合した検証・試験を行ってください。

Howto : イメージの圧縮方法

対象製品: Armadillo-J

「イメージ全体/ファイル個別の圧縮機能」を利用することで 2MB のFlashメモリ上により多くのアプリケーションを組み入れることが可能です。(カーネル/ユーザランドのサイズ制限も参照して下さい。)

ただし圧縮を行った場合「プログラムの起動」が遅くなります。

Armadillo-Jは2種類の圧縮方法を利用できます。

1. ファイル個別圧縮

個々のプログラム(実行ファイル)をGZIP形式で個別に圧縮する方法です。 プログラムのコンパイル時に以下のようにオプション指定を行うと、圧縮されたプログラムが作成されます。


 [PC ~/sample]$ export FLTFLAGS=-z
 [PC ~/sample]$ arm-elf-gcc -Wl,-elf2flt -o sample sample.c

プログラム起動時は、圧縮されたプログラムを自動的に伸張してから実行します。

2.イメージ全体圧縮

作成された書き込みイメージ全体(image.bin)を GZIP 形式で圧縮する方法です。 ブートローダーが圧縮されてFlashメモリに書き込まれたイメージを伸張しながらRAMにコピーした後、uClinuxカーネルが起動します。


 [PC ~/sample]$ wc -c image.bin
 1835008 image.bin                   圧縮前のサイズ
 [PC ~/sample]$ gzip image.bin
 [PC ~/sample]$ wc -c image.bin.gz

  729522 image.bin.gz                圧縮後のサイズ