学位论文 > 优秀研究生学位论文题录展示

类C语言程序分片系统的设计与实现

作 者: 苏振
导 师: 刘磊
学 校: 吉林大学
专 业: 软件工程
关键词: 静态分片 程序分片 控制依赖 数据依赖
分类号: TP312.1
类 型: 硕士论文
年 份: 2006年
下 载: 153次
引 用: 0次
阅 读: 论文下载
 

内容摘要


程序分片是一种重要的程序分析理解方法,用于从源程序中抽取对程序中特定点上的特定变量有影响的语句和控制条件,组成新的程序(称作分片),然后通过分析分片来分析源程序的行为。自从程序分片概念被提出以后,受到很多研究人员和软件开发人员的关注,使得它在软件测试、调试、度量、维护、程序变换、XML信息抽取、软件逆向工程与再工程等方面得到广泛应用。本文以一种自定义的结构化语言-类C语言(C-Similar Language,简称CSL)为例,描述了一个完整的静态程序分片系统的设计与实现过程。内容包括通过语法分析获得源程序的抽象语法树,从抽象语法树构造控制流图,在控制流图上做控制流分析获得源程序的控制依赖关系,在控制流图上做数据流分析获得源程序的数据依赖关系,以及最后获得源程序的程序依赖图并以图可达性算法获得程序分片的全过程。本文在编译技术、图论和程序分片理论的基础上,探讨了程序静态分片技术的实现策略,介绍了一种整体实现方案,是关于结构化语言静态程序分片系统实现的一种尝试。

全文目录


第一章 绪论  7-10
  1.1 选题背景  7
  1.2 国内外研究现状  7-9
  1.3 本文组织结构  9
  1.4 本文完成的主要工作  9-10
第二章 CSL 文法定义及其词法、语法分析  10-23
  2.1 CSL 文法设计  10-12
    2.1.1 定义 CSL 的一些考虑  10-11
    2.1.2 CSL 语法说明  11-12
  2.2 CSL 词法分析程序设计  12-15
    2.2.1 CSL 单词分类  12-13
    2.2.2 词法分析所用数据结构  13-14
    2.2.3 扫描程序的 DFA 描述及其实现  14-15
  2.3 CSL 语法分析程序设计  15-23
    2.3.1 CSL 程序的抽象语法树结构  15-17
    2.3.2 语法分析用到的数据结构  17-19
    2.3.3 语法分析程序的实现  19-23
第三章 控制流图及其构造  23-29
  3.1 CSL 中对控制流图的定义  23-24
  3.2 CSL 语句的控制流图表示  24-26
  3.3 CSL 控制流图的存储结构  26-27
  3.4 从 CSL 抽象语法树构造控制流图  27-29
第四章 控制流分析  29-45
  4.1 CSL 中的控制流分析介绍  29-35
    4.1.1 控制流分析及在分片中的应用  29
    4.1.2 CSL 控制流分析的相关定义  29-30
    4.1.3 必经结点算法介绍  30-31
    4.1.4 CSL 中的后必经结点算法  31-35
  4.2 CSL 的控制依赖图及其表示  35-38
    4.2.1 控制依赖的形式化定义  35
    4.2.2 CSL 的控制依赖图结构  35-36
    4.2.3 CSL 的控制依赖图存储  36-38
  4.3 CSL 程序的控制依赖关系求取  38-45
    4.3.1 CSL 的后必经结点树存储结构及其算法实现  38-43
    4.3.2 CSL 的控制依赖关系求取  43-45
第五章 数据流分析  45-56
  5.1 CSL 中的数据流分析介绍  45-51
    5.1.1 CSL 数据流分析的相关定义  46-47
    5.1.2 数据流方程  47
    5.1.3 CSL 语言中的数据流分析  47-51
  5.2 CSL 的数据依赖图及其表示  51-53
    5.2.1 CSL 中数据依赖的定义  51-52
    5.2.2 CSL 的数据依赖图及其存储  52-53
  5.3 CSL 的数据依赖关系获取  53-56
    5.3.1 迭代数据流分析的实现  53-55
    5.3.2 CSL 的数据依赖关系获取  55-56
第六章 CSL 分片系统总体设计和实现  56-62
  6.1 总体设计概述  56-59
    6.1.1 CSL 的程序依赖图  56-57
    6.1.2 CSL 的程序分片  57-58
    6.1.3 CSL 程序分片系统总体架构及特性  58-59
  6.2 CSL 程序分片器设计及实现  59-60
  6.3 CSL 的分片到程序的转换  60-62
第七章 总结与展望  62-63
参考文献  63-66
中文摘要  66-68
ABSTRACT  68-71
致谢  71-72
导师及作者简介  72

相似论文

  1. 串行程序并行化及其在桌面网格中的应用,TP311.11
  2. 并行计算的常用模型特征及其程序设计方法研究,TP338.6
  3. 基于ER图的关系模型到XML转换技术研究,TP311.13
  4. 延胡索中原小檗碱型季铵碱药物代谢动力学研究,R96
  5. 基于XML的概率数据模型研究,TP311.13
  6. 程序静态分析研究,TP311.11
  7. SNL语言的部分求值器及其应用研究,TP311.52
  8. 异步协同编程中基于语义的版本合并研究,TP311.11
  9. MPP机上代码生成技术,TP338.6
  10. 面向信号的ATLAS语言分片技术,TN911.6
  11. 程序中重复代码的自动检测,TP314
  12. 一种JAVA语言的程序分片技术,TP311.11
  13. 基于SUIF2的C程序循环特征分析技术研究与实现,TP311.11
  14. 红与绿——当代中国环保运动考察报告,X321
  15. 演化测试中面向分支到达的适应度函数设计研究,TP311.52
  16. 基于事务的软件投机并行机制研究,TP311.11
  17. 依赖性分析及其在软件测试中的应用,TP311.52
  18. XML数据库查询优化及相关技术研究,TP311.13
  19. 具有可生存能力的安全DBMS关键技术研究,TP311.13
  20. 基于相似度计算的编程题自动评判方法研究,TP312.1
  21. 基于XPath路径表达式的选择度估算研究,TP312.2

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序语言、算法语言
© 2012 www.xueweilunwen.com