首页--工业技术论文--自动化技术、计算机技术论文--计算技术、计算机技术论文--计算机软件论文--操作系统论文

基于编译器的内核控制流程图获取方法研究

摘要第5-6页
ABSTRACT第6-7页
缩略语对照表第9-12页
第一章 绪论第12-18页
    1.1 研究背景第12-14页
    1.2 内核控制流程图获取技术现状第14页
    1.3 研究思路第14-15页
        1.3.1 直接函数调用第15页
        1.3.2 间接函数调用第15页
        1.3.3 函数返回地址第15页
    1.4 主要工作第15-16页
    1.5 论文结构第16-18页
第二章 LLVM及Linux内核相关知识第18-30页
    2.1 LLVM编译器第18-19页
    2.2 LLVM编译器中间代码第19-26页
        2.2.1 LLVM标识符(Identifiers)第19-20页
        2.2.2 结构体类型(Structure Types)第20页
        2.2.3 全局变量(Global Variables)第20页
        2.2.4 函数(Functions)第20-21页
        2.2.5 函数类型(Function Type)第21页
        2.2.6 内联汇编表达式(Inline Assembler Expressions)第21-22页
        2.2.7 存储器存取和寻址操作第22-25页
        2.2.8 其它操作指令第25-26页
    2.3 Linux Kernel第26页
    2.4 vmlinux和bzImage第26-27页
    2.5 内核控制流程第27-28页
    2.6 本章小结第28-30页
第三章 基于编译器的内核控制流程图获取第30-54页
    3.1 利用VMLinux.dump文件获取直接函数调用流程图原理第30-32页
    3.2 利用中间代码获得间接函数调用控制流程原理第32-35页
    3.3 中间代码分析过程第35-51页
        3.3.1 构建所有函数表funclist第35-36页
        3.3.2 构建参数传递表argvlist第36-39页
        3.3.3 处理函数指针保存过程第39-44页
        3.3.4 处理函数指针使用过程第44-50页
        3.3.5 获取间接函数调用目的函数方法总结第50-51页
    3.4 获取内核控制流程图步骤第51-52页
    3.5 本章小结第52-54页
第四章 实验验证第54-58页
    4.1 LLVM编译Linux内核第54-55页
        4.1.1 生成vmlinux文件第54页
        4.1.2 生成中间代码文件第54-55页
    4.2 内核流程图获取原型系统第55-56页
    4.3 实验结果分析第56-57页
    4.4 本章小结第57-58页
第五章 结论和展望第58-62页
    5.1 研究结论第58页
    5.2 存在的不足第58-61页
        5.2.1 顺序匹配法存在缺陷第58-59页
        5.2.2 中间代码不能合并问题第59页
        5.2.3 全局变量被多次赋值第59页
        5.2.4 内核反汇编文件中函数同名问题第59-60页
        5.2.5 函数指针保存过程数据不全第60-61页
    5.3 研究展望第61-62页
参考文献第62-64页
致谢第64-65页
作者简介第65-66页

论文共66页,点击 下载论文
上一篇:VHF电台综合业务单元中频信号处理及接口设计
下一篇:转台速率平稳性控制方法的研究