首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 63 毫秒
1.
软件逆向分析技术在信息安全领域中发挥着至关重要的作用。软件逆向分析过程中,对汇编代码的定位速度极大地影响着工作效率。本文以Olly Dbg为调试工具,结合具体的实例,总结和分析了三种汇编代码定位思路。  相似文献   

2.
汇编代码验证中的形式规范自动生成   总被引:2,自引:0,他引:2  
与传统的高级语言程序验证相比,汇编代码验证中所需要的形式规范往往比较复杂,通常的做法是要求程序员手写形式规范,或是牺牲形式规范的表达能力以期能够自动生成规范.本文提出一种能够自动生成形式规范的方法,该方法依托一个出具证明的编译器自动生成汇编级形式规范,从而减轻程序员的负担.使用该方法生成的规范比现有的其他方法自动生成的规范具有更强的表达能力.文章主要描述该方法在出具证明编译器中的实现.  相似文献   

3.
通用的嵌入式汇编代码结构分析系统研究   总被引:2,自引:0,他引:2  
根据汇编语言的特点,提出了一种通用的嵌入式汇编代码的程序结构分析思想,成功地解决了汇编级代码的结构分析问题,特别是针对子程序划分、确定子程序间的调用关系及多入口和多出口等问题提出了实际的解决方案,为以后的编译优化、代码覆盖测试、逆向工程分析等环节奠定了基础。  相似文献   

4.
针对ARM程序高层代码混淆存在盲目性较强而降低混淆准确度,且很容易被逆向还原的问题.从ARM汇编指令底层研究ARM程序混淆,通过结合ARM架构指令系统的特点,基于模式切换提出一种ARM汇编代码混淆算法,包括指令模式切换混淆、寄存器随机分配混淆和虚假指令混淆,使混淆后汇编代码的控制流变得更加复杂,且对切换地址的寄存器混淆...  相似文献   

5.
携带证明代码允许代码消费方通过检查代码生产方提供的证明,来判断代码是否满足相应的安全规范.本文实现了一个类C语言的出具证明编译器原型,它在将带有规范标注的源代码编译成汇编代码的同时,还能产生汇编代码满足相应规范的Coq可检查证明,从而保证汇编代码的安全性.本文设计了一种Hoare风格的汇编级验证框架,并在此框架下提出并实现一种新的自动生成汇编级断言和证明的方法.  相似文献   

6.
引言 随着DSP技术的不断发展和完善,数字信号处理的应用范围越来越广泛。工控、计算机、通信和消费电子产品中,都会找到它的影子。到了20世纪80年代后期,各个DSP的生产商都推出了自己的高级语言编译器。这使得利用高级语言开发DSP软件成为可能。  相似文献   

7.
基于汇编代码的指令调度器的设计与实现   总被引:1,自引:0,他引:1  
随着嵌入式处理器在各个领域的广泛应用,嵌入式软件的复杂度越来越高.充分发掘嵌入式处理器的性能,需要高级编译优化技术的支持.指令调度是编译器发掘程序指令级并行性的关键技术之一.设计并实现了一个基于汇编代码的指令调度器.实验结果表明,在TECC嵌入式编译器中集成指令调度器后可显著提高程序的性能.  相似文献   

8.
即时编译器中的代码消极生成机制   总被引:1,自引:0,他引:1       下载免费PDF全文
提出一种应用于即时编译器中的代码生成优化技术——代码消极生成机制,结合Intel微处理器研究院的XORP虚拟机对该项技术进行了阐述。介绍了XORP中实现的其他轻量级优化算法,并采用EEMBC对不同虚拟机和不同优化进行了科学评估。采用该项技术的XORP虚拟机的运行速度为KVM的15倍以上,超过其他商用高性能虚拟机。  相似文献   

9.
1 引言在微处理器设计中,开发指令级并行(ILP)以提高微处理器系统的性能受到了很大的限制。研究更大发射的超标量微处理器已经是一件极其复杂而没有意义的事。但是如果在开发指令级并行的同时,开发数据级并行,理论分析表明可以显著提高微处理器的性能,微处理器的等效IPC(每个时钟周期发射的指令条数)和超标量微处理器相比可以提高20~40多倍。因此,在微处理器系统设计中开发数据级并行具有重要的理论意义和实用价值。  相似文献   

10.
许蕾  刘蕊成  陈贵美  赵晨  张卫丰 《软件学报》2019,30(7):2124-2138
随着互联网的迅猛发展,网络广告成为互联网最重要的商业模式之一.网络广告在促进互联网发展的同时,也带来了用户信息泄露、影响用户网页浏览体验等负面问题.为了对网络广告进行系统的研究,需要获取广告生成过程中完整的调用路径.由于加载到页面中的JavaScript文件量大、函数调用路径链路长、路径中的JavaScript代码经过了一定的压缩和混淆,因此很难通过静态方法获取网络广告调用路径.分析了动态广告生成的过程,对相关代码进行动态插桩,利用函数参数实现广告调用信息的传递,并记录下每个iframe内部的调用信息,通过匹配与合并多个iframe的信息,生成了完整的广告调用路径并确定了广告插入的操作方式.针对21个真实网站进行了实验,结果表明:该方法能够在不太影响性能的前提下,获取到静态方法无法获取到的广告动态加载过程信息并生成广告代码调用路径.  相似文献   

11.
代码转换是代码自动生成过程中的重要环节.提出一种基于模板、可适用于任意文法描述代码之间转换的"属性匹配-替换"算法.利用该算法,成功实现了OSEK规范中OIL语法描述代码到C语言代码的转换.  相似文献   

12.
基于路径覆盖插桩的可执行代码测试工具实现   总被引:1,自引:0,他引:1       下载免费PDF全文
王轶  蒋同海  董军  周喜 《计算机工程》2012,38(5):35-37,40
为解决传统程序插桩技术存在代码膨胀和运行时间较长的问题,提出对可执行代码进行控制流路径覆盖消除冗余的插桩策略。依据该策略设计一种针对Java可执行代码的单元测试工具,完成程序执行路径跟踪和覆盖率分析。对测试工具进行功能验证和性能分析,结果表明,该策略能够有效减少插桩点数量,降低插桩对被测程序时间特性的影响。  相似文献   

13.
代码复用是重要的软件复用方式之一,复用者需要理解软件代码实现的功能方能有效实施软件复用。基于主题建模技术的程序理解方法逐渐受到研究人员的重视,它能够帮助软件开发者和使用者更好地理解软件的功能。目前,基于主题建模技术的程序理解方法一般欠缺对挖掘出的Topic的语义分析,为此提出的基于代码静态分析和LDA技术的代码功能挖掘(Code Function Mining,CFM)方法可作为对这类方法的补充。CFM是一套以代码为研究对象的挖掘、筛选、组织和描述主题(Topic)的方法,该方法能够生成带描述的功能型Topic的层次结构,以供使用者更清晰和方便地浏览、学习软件的功能。功能型Topic的描述能够帮助复用者理解代码功能,其层次结构能够让复用者从不同抽象层次理解代码功能。CFM方法包括4个部分:挖掘Topic、筛选Topic、组织Topic、描述Topic。以CFM方法为基础,设计并实现了一个CFM工具。CFM工具能够分析用户提交的代码,通过Web页面向用户展示带描述的功能型Topic的层次结构。最后,对CFM方法中的几个关键算法进行实验分析,验证了CFM方法的有效性。  相似文献   

14.
文章主要介绍了TMS320C64XDSP的常规代码开发流程。利用数据相关性及关键路径,解决哪些指令可并行执行,进而合理安排指令的执行顺序;采用PV操作的生产者消费者算法解决共享资源的互斥问题,使寄存器和存储器避免指令间写一写、读一写冲突;采用银行家算法进一步检测资源的利用状况,避免死锁的发生。将三者有机的结合,可以得到无死锁的并行代码,为流水线结构的汇编语言程序设计提供了一种有效的方法。可以证明,这是一种有效并且可取的方法,为并行代码的快速且充分执行提供了依据。  相似文献   

15.
随着安全关键系统对计算性能要求的日趋提高,能够提供更强计算能力而又减少电子设备的体积、重量和功耗的多核处理器将在安全关键领域得到广泛应用.同步语言能够表达确定性并发行为且具有精确时间语义等特性,适用于安全关键软件的建模和验证.目前,同步语言SIGNAL编译器主要支持串行代码生成,较少关注多线程代码生成.提出一种同步语言SIGNAL多线程代码生成工具.首先将SIGNAL程序转换为经过时钟演算的S-CGA中间程序;之后将S-CGA中间程序转换为时钟数据依赖图以分析依赖关系;然后对时钟数据依赖图进行拓扑排序划分,并针对划分结果提出优化算法和基于流水线方式的任务划分方法;最后将划分结果转换为虚拟多线程结构并进一步生成可执行多线程C/Java代码.通过在多核处理器上的实验,验证了所提方法的有效性.  相似文献   

16.
提出一个无跳刀的轮廓平移刀路轨迹优化算法.根据刀路环之间父环和子环关系,提出“刀路环树”的概念,将加工刀路的一次环切定义为一个“刀路环向量”,并将刀路环的各个属性定义为刀路环向量的分量.根据无跳刀轨迹的要求,针对刀路环树的各个刀路环向量进行遍历,以获得了一个无跳刀的轮廓平移刀路轨迹算法,并通过与其他算法比较,证明该算法无跳刀、无重复切削,并且可以自动执行.  相似文献   

17.
Determination of data dependences is a task typically performed with high-level language source code in today's optimizing and parallelizing compilers. Very little work has been done in the field of data dependence analysis on assembly language code, but this area will be of growing importance, e.g., for increasing instruction-level parallelism. A central element of a data dependence analysis in this case is a method for memory reference disambiguation which decides whether two memory operations may access (or definitely access) the same memory location. In this paper we describe a new approach for the determination of data dependences in assembly code. Our method is based on a sophisticated algorithm for symbolic value propagation, and it can derive value-based dependences between memory operations instead of just address-based dependences. We have integrated our method into the Salto system for assembly language optimization. Experimental results show that our approach greatly improves the precision of the dependence analysis in many cases.  相似文献   

18.
林锦滨  蒋凡 《计算机工程》2010,36(9):68-69,7
针对符号执行分析方法路径资源消耗过大的问题,提出执行路径建模进程化的过程内分析优化方法。结合基于惰性初始化的对象建模方法,以Phoenix编译器中间表示层的代码作为直接分析对象,实现一个检测C代码漏洞的工具原型。使用该工具验证了Openssl和Apache软件的已知漏洞代码,并在wget的1.11.4版本中发现一个“拒绝服务”漏洞。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号