嵌入式系统动态补丁升级软件设计研讨.pdfVIP

  • 6
  • 0
  • 约6.03千字
  • 约 4页
  • 2018-01-12 发布于广东
  • 举报

嵌入式系统动态补丁升级软件设计研讨.pdf

CESC 2006年第一届全圉嵌入式系统学术交流套论文集 嵌入式系统动态补丁升级软件 设计研究 刘韬 王方 殷峰 西南民族大学计算机学院,成都,610041 摘要嵌入式系统动态补丁升级软件的功能是在不影响系统正常运行的情况下完成对系统错误的修 复,即在软件运行过程中,用补丁模块替换旧的模姥,不打断原有程序的执行顺序。奉丈介绍了嵌八式系统动 态补丁升级软件的总诳设计、组成模嵌厦应用方式。 关键词嵌入式乐统,动态补丁,升级 引 言 嵌^式系统是指以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、 体积、功耗等综台性严格要求的专用计算机系统。随着网络技术和数字信息技术的高速发展,嵌入式广泛应用 于信息家电、医疗仪器.智能汽车、工业控制、通信设备等各个领域,这些应用对嵌入系统的可靠性都提出了很 高要求。立¨何保障嵌入武系统的高效、稳定地运行,提高嵌入式系统的鲁棒性,是摆在嵌人式系统设计人员面 前的一个严峻的课题。嵌入式系统动态补丁升级软件的功能是在不影响系统正常运行的情况下完成对系统错 误的修复,即在软件运行过程中,用补丁模块替换旧的模块,不打断原有程序的执行顺序;利用出现错误后相应 文件的动态州级修复,极大地提高了系统的可靠性。 2系统总体设计 2.1系统体系结构 嵌入式系统动态补丁升级软件分为前台和后台两个部分,共包括4个模块:符号表制作模块、补丁文件制 作模块、补丁控制模块和异常处理模块。 各个软件模块之间的戈系如图1所示。 后台 被 补 丁 目 标 文 件 圈l嵌入式系统动态补丁升级软件总体框架 该软件由两部分组成:补丁文件的制作和补丁状态的控制。补丁状态控制依赖于补丁文件中的信息,而 补丁文件的制作则依赖于被补丁程序和操作系统的符号表。相应地,嵌入式系统动态补丁升级软件分为3个 模块来实现,即符号表制作模块、补丁文件制作模块和补丁控制模块。其中,补丁控制模块由运行在后台的补 丁监拄台和运行在前台的补丁控制任务共同构成。 符号表制作模块:提取操作系统和应用的符号,加入到符号表中.井以文本模式将符号表输出到符号表文 第一部分教学研讨篇 3 件中。提取的符号包括所有的全局变量符号和函数符号。 补丁文件制作模块:分析所有输入补丁目标文件,进行符号解析和重定位,拘造函数替换表一生成包含所 有输人补丁目标文件信息的补丁文件。 朴丁控制模块,后台的补丁监控台接收补丁控制命令,发送给前台的补丁控制任务,补丁控制任务完成补 丁状态转换后将执行结果返回给补丁监控台。补丁控制任务具有最低的优先级,当业务进程不使用CPU时才 运行。 肄常处理模块:通过底层操作系统提供的钩子函数捕获异常,保存井打印异常现场;同时通过堆栈回溯分 析异常是否发生在补丁函数中,如果是刚恢复执行原来的函数。 运行时补丁升级的实质就是运行时函数替换。系统发现程序中的错误后,利用文本编辑器生成包含补丁 函数的补丁源文件;补丁糠文件经过编译器处理后生成补丁目标文件。补丁目标文件都是可重定位的。一个 补丁目标文件可以由多个补丁源文件编译而成,一次打补丁可以同时输入多个补丁目标文件。 补1“文件制作模块分析输入的补丁目标文件,输出补丁文件。生成的补丁文件包含备模块的可加载段 (text段和data段)和各模块的函数替换表。为了构造函数替换表,对补丁目标文件进行重定位并进行变量重 复定义等错瀑检查,需要获取被补丁程序和操作系统的符号表。 被补丁程序、操作系统以及补丁控制任务共同被编译、链接生成一个可执行目标文件;符号表制作模块提 取可执行目标文件中的符号表,将其中的全局变量和所有函数符号加入符号表中。为了便于用户查询.符号表 制作模块还需要将符号表格式化输出到文本文件中。 由于补

文档评论(0)

1亿VIP精品文档

相关文档