Tigress学习系列【2】(ImplicitFlow)

ImplicitFlow

ImplicitFlow官网地址
ImplicitFlow

1 命令选项

OptionArgumentsDescription
–TransformInitImplicitFlow初始化隐式流
–InitImplicitFlowHandlerCountINTSPEC插入的信号解释例程(signal handler)数,默认为1
–InitImplicitJitCountINTSPEC插入的固定(jitted)函数数目,默认为0
–InitImplicitCacheSizeINTSPEC文件缓存隐式流的大小,默认为100
–InitImplicitFlowJitFunctionBodyS-ExpressionS-Expression描述了被固定的功能的控制结构
–InitImplicitFlowKinds注释[1]注释[1]
–InitImplicitFlowTrainingKindgap,resend如何训练,默认为gap。其中gap表示慢速和快速时间之间的差,resend表示使用更复杂的统计测试,重新发送每个位直到达到保证的置信度和目标错误率
–InitImplicitFlowTrainingParameterRangeS-Expression一个S-Expression是由形式为(implicit-flow-kind from to)的列表元素组成
–InitImplicitFlowTraceBOOLSPEC跟踪隐式流初始化的执行
–InitImplicitFlowTrainBOOLSPEC产生运行训练pass的程序
–InitImplicitFlowTimeBOOLSPEC产生运行许多时序测试的程序,默认为false
–InitImplicitFlowTrainingTimesClockINTSPEC针对基于时序的原语所进行的训练测量数,默认为0
–InitImplicitFlowTrainingTimesThreadINTSPEC针对基于线程的原语所进行的训练测量数,默认为0
–InitImplicitFlowTrainingGapMaxFailureRateClockINTSPEC针对基于时序的原语的最大可接受故障率,默认为5
–InitImplicitFlowTrainingGapMaxFailureRateThreadINTSPEC针对基于线程的原语的最大可接受故障率,默认为5
–InitImplicitFlowTrainGapMinGapINTSPEC快中点与慢中点之间的最小差距,默认为80
–InitImplicitFlowTrainingResendConfidenceLevereal重发训练类型的置信度,默认为0.95
–InitImplicitFlowTrainingResendTargetErrorRatereal重新发送训练类型的可接受错误率,默认为0.0001
–InitImplicitFlowTrainingDataS-Expression从–InitImplicitFlowTrain的先前运行中设置训练数据
注释[1]
ArgumentsDescription
counter_int通过累加一个变量的值来复制变量
counter_float通过累加一个变量的值来复制变量
counter_signal在信号hander中通过累加一个变量的值来复制变量
bitcopy_unrolled逐位复制变量,用if语句测试每一个位
bitcopy_loop循环遍历变量中的位,通过用if语句测试来复制每一个位
file_write通过写入文件,逐字节复制变量
trivial_clock通过计时trivial循环来复制变量
trivial_thread_1使用1个线程计时,进行计时trivial循环来复制变量
trivial_thread_2使用2个线程计时,进行计时trivial循环来复制变量
trivial_counter使用计时一个trivial循环来复制变量
file_cache_time在打开/关闭缓存情况下,定时读取文件来复制变量
file_cache_thread_1使用1个线程计时,在打开/关闭缓存情况下,定时读取文件来复制变量
file_cache_thread_2使用2个线程计时,在打开/关闭缓存情况下,定时读取文件来复制变量
men_cache_time通过定时读取具有或不具有缓存的CPU数据缓存来复制变量
men_cache_thread_1使用1个线程计时,通过定时读取具有或不具有缓存的CPU数据缓存来复制变量
men_cache_thread_2使用2个线程计时,通过定时读取具有或不具有缓存的CPU数据缓存来复制变量
jit_time通过计时固定函数来复制变量
branchPrediction_time通过计时CPU的分支预测来复制变量
*所有选项

2 实验

未混淆c文件如下所示,命名为"ImplicitFlow.c"。

tigress --Environment=x86_64:Linux:Gcc:4.8.5 --Transform=InitImplicitFlow --Functions=main --out=ImplicitFlow_obf.c ImplicitFlow.c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值