嵌入式共享远程调试技术的研究与实现

嵌入式共享远程调试技术的研究与实现

论文摘要

当今,随着嵌入式系统的广泛应用,相关技术发展迅猛。嵌入式系统软硬件更新频繁,需求旺盛,嵌入式开发技术已成为非常热门的研究领域。提高嵌入式系统的软件的开发效率和可靠性具有显著的意义。在传统的嵌入式软件开发中,调试作为一个复杂而必要的环节,当前典型的嵌入式调试技术已逐渐显得低效。为此本文从四个方面提出一种新的软件调试技术以解决这个问题。第一,使用记录/回放的逆向调试功能,可使程序向后执行,不用重启调试过程。第二,生成程序某时刻运行状态的进程快照,并记录随后的指令执行,生成记录链表,通过这个进程快照和记录链表可以实现离线的程序段调试,重现程序执行过程。第三,在离线调试中生成某一时刻的进程快照文件,通过这一文件恢复目标程序的运行状态,直接调试某一时刻程序的状态,提高可定位问题的效率。第四,通过在多机之间使用这个过程,可以实现整个调试系统的共享,包括程序运行过程的共享和调试资源的共享。为此本文提出了一种新的调试模型——共享调试模型,通过这一模型可以在逆向调试、重现程序运行、多机协作、资源共享方面对调试过程进行改进。本文最后将共享调试模型应用在嵌入式远程调试中,实现了一个嵌入式共享远程调试系统。经实践该系统能达到缩短调试过程、团队协作调试、共享调试资源的目地,提高了嵌入式软件调试的效率。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 本课题的研究背景及意义
  • 1.2 国内外研究与应用现状
  • 1.2.1 调试技术发展现状
  • 1.2.2 支持逆向调试的调试器
  • 1.3 课题目标及主要工作
  • 1.4 本文的组织结构
  • 第二章 共享调试相关技术介绍
  • 2.1 引言
  • 2.2 嵌入式集成开发环境Apollo Pro IDE 概述
  • 2.2.1 Apollo Pro IDE 总体结构
  • 2.2.2 调试管理模块概述
  • 2.3 快照技术
  • 2.3.1 检查点
  • 2.3.2 进程迁移
  • 2.3.3 进程快照
  • 2.4 逆向调试技术
  • 2.4.1 基于逆向指令的逆向调试技术
  • 2.4.2 基于快照技术的逆向调试技术
  • 2.4.3 基于日志记录的逆向调试技术
  • 2.5 本章小结
  • 第三章 共享调试模型研究
  • 3.1 引言
  • 3.2 共享调试研究背景
  • 3.3 共享调试设计原则
  • 3.4 共享调试设计思路
  • 3.5 共享调试模型结构
  • 3.6 应用实例
  • 3.7 本章小结
  • 第四章 嵌入式共享远程调试的设计
  • 4.1 引言
  • 4.2 嵌入式共享远程调试概述
  • 4.3 总体结构
  • 4.3.1 宿主机
  • 4.3.2 目标机
  • 4.3.3 服务器
  • 4.4 功能模块
  • 4.5 系统流程
  • 4.6 本章小结
  • 第五章 嵌入式共享远程调试的实现
  • 5.1 引言
  • 5.2 嵌入式共享远程调试概述
  • 5.2.1 网络结构图
  • 5.2.2 模块结构图
  • 5.3 总体实现概述
  • 5.4 记录数据格式
  • 5.4.2 进程快照文件格式
  • 5.4.3 记录链表数据结构
  • 5.5 记录功能子模块实现
  • 5.5.2 进程快照记录
  • 5.5.3 记录链表记录
  • 5.6 回放功能子模块实现
  • 5.6.1 在线调试模式下的回放
  • 5.6.2 离线调试模式下的回放
  • 5.7 切换功能子模块实现
  • 5.7.1 生成进程快照
  • 5.7.2 恢复进程状态
  • 5.7.3 调试控制权切换
  • 5.8 记录/回放模块的移植
  • 5.9 系统测试
  • 5.9.1 测试环境
  • 5.9.2 功能测试
  • 5.9.3 性能测试
  • 5.10 本章总结
  • 第六章 总结与展望
  • 6.1 工作总结
  • 6.2 工作展望
  • 致谢
  • 参考文献
  • 个人简历
  • 相关论文文献

    标签:;  ;  ;  ;  

    嵌入式共享远程调试技术的研究与实现
    下载Doc文档

    猜你喜欢