RAM が制限された組み込み Linux で rootfs をフラッシュする

RAM が制限された組み込み Linux で rootfs をフラッシュする

私は組み込みの世界では比較的新人なので、これが当たり前のことのように思われる場合はお許しください。

私は AT91SAM9260 をベースにしたボードで作業しています。256MB のフラッシュと 64MB の RAM があります。現在のセットアップでは、2 つの uImage がフラッシュされます。1 つ目は RAMDISK のみのリカバリ イメージで、2 つ目はメインの uImage です。最初の uImage は、メインの uImage の /dev/mtd1 に rootfs.ubifs をフラッシュするために使用されます。

私が遭遇している問題の 1 つは、リカバリ イメージから rootfs をフラッシュするときにメモリが不足することです。rootfs のサイズによっては、フラッシュ中にメモリが不足します。TFTP を使用してイメージをデバイスにプルし、フラッシュしています。そのため、リカバリ uImage とともにメモリ内に常駐している必要があります。

おそらく、もっと効率的な方法はあるのでしょうか? 目標は、組み込みデバイスに搭載されることを考えると、当然ながら rootfs を小さく保つことですが、お客様の中には異なるニーズを持つ方もおり、OS によってフラッシュがいくらか占有されることを気にしない方もいます。

答え1

フラッシュする前に、いくつかのプロセス (samba、snmp などのサービスなど) を強制終了して、使用可能なメモリを増やすことができます (更新が完了したら再起動が実行されるものとします)。

関連情報