资料详情

基于动态分析的程序运行轨迹剖析研究

头像

Linux

编号:2836
题  目
基于动态分析的程序运行轨迹剖析研究
课题类型
理论研究■ 
工程设计□
课题类别
理论与实验□   硬软结合(含硬件)□
软件■           其他□
设计内容与技术要求
果形式
一、设计内容:
    对程序进行动态分析,将程序运行中的轨迹信息以直观的图标或者数字形式表示,有助于程序设计人员快速熟悉程序,了解程序的调用关系以及对程序整体性能影响最大的部分,并为程序优化提供一定的参考数据,对分析和优化程序提供帮助。
二、技术要求:
熟悉Linux环境和C语言程序的编程规范和编程技巧;
知道程序分析工具pin的运行使用;
熟悉程序分析特点及方法;
能够准确利用程序分析工具pin开发并分析程序运行轨迹。 
三、成果形式:
完成具有所要求测试功能的软件,并进行演示;
提交毕业设计报告及其电子文档。
设计进度
1.认真学习程序分析和pin工具,完成开题报告                        2 周
2.熟悉Linux操作系统的基本使用方法,能够在该系统下进行简单操作    2 周
3.熟悉pin工具,了解pin tools的相关功能                            3 周
4.利用pin开发linux环境下程序运行轨迹剖析工具                     3 周
5.完善程序运行轨迹剖析工具,并进行优化和测试                      2 周
6.整理资料,论文写作,准备答辩                                    2周
参考资料
[1] Luk C K, Cohn R, Muth R, et al. Pin: Building Customized Program Analysis Tools with Dynamic Instrumentation[C]. Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2005:190-200.
[2] Jalan R, Kejariwal A. Trin-Trin: Who’s Calling? A Pin-Based Dynamic Call Graph Extraction Framework[J]. International Journal of Parallel Programming, 2012, 40(4):410-442.
[3] Chabbi M, Liu X, Mellor-Crummey J. Call Paths for Pin Tools[C]. Proceedings of IEEE/ACM International Symposium on Code Generation & Optimization, 2014:76-78.
[4] 曾佳平, 杨秋辉, 汪华龙,等. 基于动态插桩的C/C++内存泄漏检测工具的设计与实现[J]. 计算机应用研究, 2015,32(6):1737-1741.
[5] 钟芳挺, 刘超, 金茂忠. 程序动态分析系统中插桩方式的改进[J]. 计算机工程与设  计,2007,28(19):4585-4587.
[6] M. Uhgr, R. Cohn. Analyzing dynamic binary instrumentation over head[C]. Proceedings of Workshop on Binary Instrumentation and Application, 2007:56-64.