저는 임베디드 세계에 익숙하지 않기 때문에 이것이 명백해 보인다면 용서해 주십시오.
저는 AT91SAM9260을 기반으로 한 보드를 작업 중입니다. 256MB의 플래시와 64MB의 RAM이 있습니다. 현재 설정에서는 두 개의 uImage가 깜박입니다. 첫 번째는 RAMDISK 전용 복구 이미지이고 두 번째는 기본 uImage입니다. 첫 번째는 기본 uImage용 /dev/mtd1에 rootfs.ubifs를 플래시하는 데 사용됩니다.
제가 겪고 있는 문제 중 하나는 복구 이미지에서 rootfs를 플래시하는 동안 메모리가 부족하다는 것입니다. rootfs의 크기에 따라 플래싱하는 동안 메모리가 부족해집니다. 저는 TFTP를 사용하여 이미지를 장치로 가져와서 플래시합니다. 따라서 복구 uImage와 함께 메모리에 상주해야 합니다.
이 작업을 수행하는 더 효율적인 방법이 있습니까? 목표는 rootfs를 작게 유지하는 것이지만 임베디드 장치에 적용된다는 점을 고려하면 일부 고객은 서로 다른 요구 사항을 갖고 있으며 OS가 플래시를 더 많이 차지하는 것을 꺼리지 않습니다.
답변1
플래시하기 전에(업데이트가 완료되면 재부팅이 수행된다고 가정) 일부 프로세스(samba, snmp 등의 서비스)를 종료하여 더 많은 메모리를 확보할 수 있습니다.