摘要:
本文主要阐述了基于linux操作系统的数字电视机顶盒的常用几种升级方式:OTA,USB,网络,结合常用的bootloader:cfe,u-boot实现升级做了简述,并综合对比其各自的优劣。
关键词:
数字电视机顶盒,升级方式,linux,u-boot, cfe ,OTA ,bootloader
随着技术的日新月异,以及为了满足用户对功能和使用的要求,需要对机顶盒进行升级来满足需求,升级不仅能解决程序的BUG,还能增加新功能,但是升级考虑不全面将会造成很多问题,本文就机顶盒的常见几种升级方式的设计与实现来进行探讨,目前常用的升级方式有,OTA升级,USB升级,网络升级,以及串口升级,由于目前程序越来越大,电脑对串口的支持,尤其是笔记本电脑一般没有串行接口,虽然有USB转串口之类的设备,串口的传输速度也是很慢的,所以串口对整个程序的的升级已经越来越少。这里的OTA升级是讨论针对数字电视的有线数据传输来进行的升级。后面两种升级方式基本上是嵌入式终端设备的通用升级方式,不限制于具体的设备。
目前的升级,一种方案是直接在bootloader中实现,另外一种是bootloader+应用层实现。前者实现难度相对较大,人机界面不是很友好,但能节省部分空间,代码相对独立。后者实现难度较低,人际界面也友好,扩展性强,但需要额外的空间,仍然依赖bootloader。
摘自《嵌入式系统BootLoader技术内幕》
对于目前大多数嵌入式操作系统的机顶盒,需要升级的部分大致可以分为bootloader,kernel,rootfs+app,有的可能划分更细。升级程序和bootloader息息相关,一般bootloader起到引导和升级,就需要在机顶盒出厂前已经固化并保证数据安全,为后续的升级做准备和铺垫。针对目前常用的linux机顶盒环境,bootloader一般有u-boot,cfe,redboot以及其他一些bootloader。U-boot作为一种通用的bootloader已经成熟的应用到各种嵌入式设备中,CFE是broadcom公司针对其芯片做的一个通用固件环境,基于MIPS架构。我们公司拥有目前主流的架构arm架构,super-h架构,mips架构和powerpc,主要用到u-boot和cfe,我主要也就以上两种bootloader做一些升