FULL VS INCREMENTAL OTA

2023-10-08 11:58
文章标签 vs ota full incremental

本文主要是介绍FULL VS INCREMENTAL OTA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载:http://www.xanh.co.uk/full-vs-incremental-ota/#more-144

这里写图片描述
There are two types of OTA. Each with its own advantages and usages. But there is only one type typical customer would see (the other one you probably never heard off). Let take a look at them in details.

As you can see on the graph above those two types of OTA are: incremental and full.

Differences:

  1. Usage

The most significant difference between those OTA types is its ‘start point’ (the build we can upgrade from using the OTA). When Full OTA can be used across the entire firmware line [∞ -> B], the Incremental can be only used between specific points [A->B].

  1. Size

The typical size of the full OTA is close to the size of the firmware image, while incremental is varied can be as small as few KB and as big as Full OTA, there is not rule here (however usually much smaller than Full).

  1. Content

Reason why full OTA size is so close to original firmware image is not coincidental as it practically contain the entire image within – just in a form allowing update via recovery mode. Incremental OTA on the other hand contains only the binary differences (parts of files that have been altered) between two stages [A->B], thus it carries less data.

Similarities:

Regardless of type of OTA selected both will update device to the same endpoint. Both will verify if devices is ‘signed’ (certificates are matching) with correct keys. And as an updates they will not erase user data (of a contrary when flashing ROM).

Advantages – Full OTA:

not error prone -> ignores any changes made on the device (alterations in system partition) – good way of recovering device from ‘unknown’ (heavily modified) state
no need to find specific build to update -> can be used on all builds (except for downgrading)
Drawbacks – Full OTA:

its size -> can be size of the firmware image (longer to download)
possible security breach -> releasing it is similar to release firmware image (same content only in different format)
Advantages – Incremental OTA:

size -> can be much smaller than full
security -> contain only binary differences for files so full content is not revealed to end users
control -> possible to control end user update path as can only be successfully applied to particular build
Drawbacks – Incremental OTA:

not error prone -> any change to ‘system’ might result in error during update (which could be good for ODM – ensure only original FW provided by them is being used)

这篇关于FULL VS INCREMENTAL OTA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/165104

相关文章

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

VS Code 调试go程序的相关配置说明

用 VS code 调试Go程序需要在.vscode/launch.json文件中增加如下配置:  // launch.json{// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information,

解决服务器VS Code中Jupyter突然崩溃的问题

问题 本来在服务器Anaconda的Python环境里装其他的包,装完了想在Jupyter里写代码验证一下有没有装好,一运行发现Jupyter崩溃了!?报错如下所示 Failed to start the Kernel. ImportError: /home/hujh/anaconda3/envs/mia/lib/python3.12/lib-dynload/_sqlite3.cpython-

VSC++: 括号对称比较

括号的使用规则:大括号,中括号,小括号{[()]};中括号,小括号[()];小括号();大括号、中括号、小括号、中括号、小括号、大括号{[()][()]};大括号,中括号,小括号,小括号{[(())]};大括号,中括号,小括号,小括号{[()()]};小括号不能嵌套,小括号可连续使用。 {[]}、{()}、([])、({})、[{}]、{}、[]、{[}]、[(])都属非法。 char aa[

Apache Kylin VS Apache Doris全方位对比

1 系统架构 1.1 What is Kylin1.2 What is Doris2 数据模型 2.1 Kylin的聚合模型2.2 Doris的聚合模型2.3 Kylin Cuboid VS Doris RollUp2.4 Doris的明细模型3 存储引擎4 数据导入5 查询6 精确去重7 元数据8 高性能9 高可用10 可维护性 10.1 部署10.2 运维10.3 客服11 易用性 11.1

Kafka 为了避免 Full GC,竟然还在发送端设计了内存池,自己管理内存,太巧妙了...

一、开篇引出一个 Full Gc 的问题 在上一篇文章中,我们讲到了 Kafka 发送消息的八个流程,并且着重讲了 Kafka 封装了一个内存结构,把每个分区的消息封装成批次,缓存到内存里。 如下图所示: 上图中,整体是一个 Map 结构,Map 的 key 是分区,Map 的值是一个队列;队列里有一个个的小批次,里面是很多消息。 这样好处就是可以一次性的把消息发送出去,不至于来一条发送一条,

vs环境下C++dll生成和使用

动态库和静态库: 动态库:全名动态链接库,用于将你的函数封装,让别人只能调用,不能看你的实现代码。由引入库和dll组成:引入库包含导出的函数和变量名,dll包含实际的函数和数据,运行时加载访问dll文件。  Windows API中的所有函数都封装在dll里面,最重要的三个: Kernel32.dll:包含管理内存、进程和线程的各个函数。User32.dll:包含用于执行用户界面任务,如窗口和

VS Code与SVN关联

VS Code是一款轻量级的集成开发环境,可通过安装插件与SVN进行关联。以下是将VS Code与SVN关联的步骤: 安装SVN插件:在VS Code中打开Extensions(快捷键:Ctrl+Shift+X),搜索并安装"svn"插件。 安装SVN命令行工具:在计算机上安装SVN命令行工具,确保在命令行中可以运行svn命令。 配置SVN路径:在VS Code中打开用户设置(快捷键:Ct

学习记录-VS踩坑记录

一、安装VS2015后,CMAKE执行错误: CMAKE_C_COMPILER-NOTFOUND" was not found.   CMAKE_CXX_COMPILER-NOTFOUND" was not found.  环境: 1.公司内网,无法上外网; 2.文件加密系统; 3.数字公司杀毒软件; 解决方法: 清理环境,添加USBwifi,安全模式卸载数字软件; 1.设置环

AOSP和OTA全称

AOSP: Android Open Source Project 官网来源参考: OTA: Over The Air 官网来源参考: 参考: https://developer.android.com/preview/download-ota.html#install-ota https://source.android.com/