嵌入式Linux固件升级
开发需求
? 基于TCP/IP完成驱动模块和应用程序的更新、升级
特殊声明
该文档中驱动程序和应用程序统称为“固件”。
? 主 机:VMWare--Fedora 9
? 开发板:yc2440--64MB Nandflash;Kernel:2.6.24.4
? 编译器:arm-linux-gcc-4.0.0
设计原理图
说明:
? 开发板启动FileServer应用程序,作为TCP/IP的Server端,提供接收升级文件的服务。
? 当需要进行固件升级时,PC启动FileClient应用程序,作为TCP/IP的Client端,提供发送升级文件的服务。
? Shell脚本文件StartShell判断是否有固件需要升级,如果有更新现有固件后,启动更新后的固件,如果没有,启动现有固件。
文件名称 | 所在目录 | 功能 |
FileClient | Linux PC下任意目录 | PC机TCP/IP客户端, 向开发板发送升级固件。 |
FileServer | Linux开发板 /tmp/update/ | 开发板TCP/IP服务端, 接收客户端发送的升级固件。 |
StartShell | Linux开发板 /etc/init.d/ | 替换相应固件, 启动相应固件。 |