论文部分内容阅读
随着计算机信息技术的不断发展,各种嵌入式系统出现在社会和生活中的各个角落。由于嵌入式设备的各种优点,如体积小、性能高、便携带、针对性强等各种优点,使得嵌入式系统在几乎社会的各个领域都得到广泛应用。各种各样的嵌入式设备层出不穷,而且功能越来越强大,软件越来越复杂。在这种情况下,嵌入式固件中存在问题不可避免,而且为了更好的服务客户,赢得市场,各种固件版本不断推出。这就为嵌入式固件升级技术的应用提供了一个广阔的应用范围。首先,本文对嵌入式固件升级过程中所用到的各项技术进行了深入研究:深入研究了字节差分算法模型,利用字节差分算法可以对两个不同版本的固件进行差分操作,继而产生一个远小于新版固件的升级包,减少固件升级系统的传输量;深入研究了软件容错技术,利用软件容错技术可以提高整个固件升级系统的可靠性和安全性,降低在系统在意外情况下的崩溃和对升级设备的损害;深入研究了嵌入式设备存储管理技术,利用嵌入式设备存储存储管理技术可以解决固件更新过程中固件大小发生变化时的存储管理问题,提高固件更新的效率;深入研究了嵌入式设备编程技术,分析了嵌入式编程技术中经常用的三种技术,并对三种技术各自的优缺点以及适用场合做了深入探讨。然后,本文针对摩托罗拉对讲机系统的特点,设计并实现了一套切实可行的嵌入式固件远程升级解决方案。第一,根据对现有字节差分算法缺陷的分析,提出了一种通过增加预处理环节提高字节差分算法效率的设计,并加以实现;第二,为了提高固件升级服务器的并行性,完成了对固件升级服务器的线程池的设计,降低资源消耗,提高了升级效率;第三,通过对终端存储管理方案中的地址预留存储管理方案和动态存储分配管理方案的研究,提出了一种结合地址预留的动态存储分配的管理方案,提高了系统灵活性和可用性;第四,针对摩托罗拉对讲机系统的特点和升级包格式,完成基于IAP技术的嵌入式在线编程的设计与实现。最后,本文对目前系统中完成的工作进行了总结,通过系统在实施过程中发现的问题,提出了该系统需要改进和完善的地方,为下一阶段的任务明确了方向。