基于Makefile文件依赖的源码分析工具设计与实现
| 摘要 | 第3-4页 |
| ABSTRACT | 第4-5页 |
| 第一章 绪论 | 第8-16页 |
| 1.1 研究背景和意义 | 第8-11页 |
| 1.2 研究现状 | 第11-13页 |
| 1.3 本文研究内容和主要工作 | 第13-14页 |
| 1.4 论文组织结构 | 第14-16页 |
| 第二章 查找范围分析 | 第16-31页 |
| 2.1 方法概述 | 第16页 |
| 2.2 文件间依赖关系 | 第16-18页 |
| 2.3 makefile | 第18-20页 |
| 2.3.1 makefile语法 | 第18-19页 |
| 2.3.2 makefile依赖关系 | 第19-20页 |
| 2.4 提取文件依赖信息 | 第20-29页 |
| 2.4.1 依赖信息转化 | 第21-24页 |
| 2.4.2 依赖信息描述 | 第24-29页 |
| 2.5 依赖关系查找 | 第29-30页 |
| 2.6 本章总结 | 第30-31页 |
| 第三章 提取源码信息 | 第31-55页 |
| 3.1 静态分析技术 | 第31-32页 |
| 3.2 提取源码信息模型 | 第32-42页 |
| 3.2.1 符号信息提取 | 第33-38页 |
| 3.2.2 符号名处理 | 第38-39页 |
| 3.2.3 信息表结构 | 第39-42页 |
| 3.3 主要结构模型描述 | 第42-54页 |
| 3.3.1 变量信息模型 | 第42-44页 |
| 3.3.2 函数信息模型 | 第44-48页 |
| 3.3.3 数据结构信息模型 | 第48-51页 |
| 3.3.4 宏信息模型 | 第51-54页 |
| 3.4 本章总结 | 第54-55页 |
| 第四章 源码分析定位工具的设计与实现 | 第55-70页 |
| 4.1 系统设计 | 第55-57页 |
| 4.1.1 系统需求分析 | 第55-56页 |
| 4.1.2 系统架构设计 | 第56-57页 |
| 4.1.3 系统实现结构设计 | 第57页 |
| 4.2 系统功能实现 | 第57-69页 |
| 4.2.1 定位功能实现 | 第59-62页 |
| 4.2.2 系统显示功能实现 | 第62-64页 |
| 4.2.3 符号定位流程 | 第64-69页 |
| 4.3 本章总结 | 第69-70页 |
| 第五章 系统测试 | 第70-78页 |
| 5.1 主机环境 | 第70页 |
| 5.2 功能对比 | 第70-78页 |
| 5.2.1 函数定义定位功能对比 | 第70-72页 |
| 5.2.2 struct定义定位功能对比 | 第72-75页 |
| 5.2.3 宏定义定位功能对比 | 第75-76页 |
| 5.2.4 测试结果对比分析 | 第76-78页 |
| 第六章 总结与展望 | 第78-79页 |
| 参考文献 | 第79-83页 |
| 附录 | 第83-84页 |
| 硕士期间参与的科研项目 | 第83页 |
| 硕士期间专利申请 | 第83-84页 |
| 致谢 | 第84-85页 |