linux下使用pin的一些问题

linux下使用pin的一些问题:一,pin无法将代码插入程序,这可能跟权限有关吧,命令提示:The Operating System configuration prevents Pin from using the default (parent) injection mode.To resolve this,either execute the following (as root):

$ echo 0>/proc/sys/kernel/yama/ptrace_scope

Or use the “-injection child” option

第一个解决方法我没有尝试成功,第二个成功了,即在pin的参数行添加"-injection child",即可通过运行。
PIN能检测的层次:instruction(指令级)、bbl(基本块)、trace、routine(常规)、image(镜像级)

instruction指令级:指的是汇编指令,如mov、loop、etc。
bbl指一个入口和一个出口的语句。
trace是一个入口多个出口的语句,如if
routine相当于一个函数
image是exe,dll之类的映像文件。
下面分别来自inscount0.cpp、inscount1.cpp、proccount.cpp的三个语句

INS_InsertCall(ins,IPOINT_BEFORE, (AFUNPTR)printip, IARG_INST_PTR, IARG_END);

BBL_InsertCall(bbl, IPOINT_BEFORE, (AFUNPTR)docount, IARG_UINT32, BBL_NumIns(bbl);

RTN_InsertCall(rtn,IPOINT_BEFORE, (AFUNPTR)docount,IARG_PTR, &(rc->_rtnCount), IARG_END);
,***_InsertCall()函数,表示在什么情况(针对不同的***由IPOINT_决定在***的前中后还是任意位置)下调用(AFUNPTR)函数进行相应的操作,如输出地址,计数等等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值