Basit cevap evet - yüksek güvenilirlik istiyorsanız bootloader ve A / B kodu görüntülerini desteklemek için yeterli flaş bloğuna ihtiyacınız var. Yeni görüntüyü etkinleştirmeden önce, her şeyi yazabilir, doğrulayabilir ve potansiyel olarak yeniden deneyebilirsiniz.
Ancak bu olduğunu pahalı / güvenilir strateji ve yükü azaltmak için yapabileceğiniz şeyler vardır. OTA güncellemeleri için düşük düzey destek, aygıt ürün yazılımının veya işletim sisteminin bir parçası olarak da gelebilir, bu nedenle öğrenmek istemediğiniz sürece kendi başınıza dönmekten kaçınabilirsiniz. Bu özellik olarak tanımlanabilir FOTA
.
Kod tabanınızı bölümlemek artımlı güncellemelere izin verir, en iyi durumda önyükleyici ağ bağlantısını getirebilir, herhangi bir geri dönüş kullanıcı koduna ihtiyaç duymadan kodu indirebilir ve doğrulayabilir. Yerel bir ağ geçidi ile, bu görevin yönetimi düşük maliyetli uç noktalardan devredilebilir.
Birçok cihazda az miktarda kelime silme flaşı vardır ve bu başarısız olsa bile, tüm bloğu silmeye gerek kalmadan genellikle bitleri ayarlayabilirsiniz . Bu özellikler, atlama tablolarını değiştirmek ve blok boyutları yığınlarında güncellenen kodu birleştirmek için kullanılabilir. Başlangıçta tam bir A / B kod alanı planlamış olsanız bile, kod tabanı çok büyüdüğünde daha karmaşık bir şemaya geri dönmeniz gerekebilir.
Gelişmiş bir kablosuz yazılım çözümü ile elde edilebilecek işlevselliği açıklığa kavuşturmak için, önyükleyici ve potansiyel olarak birincil iletişim yığını, kalan kullanıcı uygulama alanının tamamı yeniden yanıp sönerken yerleşik kalabilir. Bunun herhangi bir ek yüke ihtiyacı yoktur (özellikle blok bölümleme yumuşaksa). İletişim yığınının yükseltilmesi gereken senaryoda, uygulama kodu için genellikle kullanılan bölge indirme ve doğrulama sırasında geçici olarak kullanılabilir. Bunu başarmak için SoC'da biraz destek gerekir, ancak bunu göz önünde bulundurarak tasarlanan 2. ve 3. nesil cihazlar zaten var.