首页
社区
课程
招聘
已解决
发表于: 2016-4-13 00:50 8926

已解决

2016-4-13 00:50
8926
收藏
免费 0
支持
分享
最新回复 (29)
雪    币: 64
活跃值: (67)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
26
下面我的写的 My_mprotect 函数 有没有错误,是否正确。。。。。

static void  My_mprotect(int   * addr  ,   int   len ,    int   prot  )
{
   const int syscall = 0x7D;  //这里 0x7D 就是  mprotect的函数序号。
  __asm __volatile
    (
    "mov   r0  ,  %0    \n"   // 我猜测 r0 存放  参数1   addr  代码地址
    "mov   r1  ,  %1    \n"   // 我猜测 r1 存放  参数2    len   内存长度
    "mov   r2  ,  %2    \n"   // 我猜测 r2 存放  参数2    prot  内存属性  
    "mov   r7  ,  %3    \n"   // 这个r7存放 mprotect系统函数序号

    "svc     0x00000000\n"  // 这句是中断语句. 用于执行函数序号所对应的函数   非常牛 . 逼。。。
    :
    :  "r" (addr)  ,  "r" ( len)  , "r" (prot)  ,  "r" (syscall)
    :  "r0"        ,   "r1"         ,     "r2"    ,      "r7"
     );
}
2016-4-14 00:16
0
雪    币: 228
活跃值: (60)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
27
激情不错,不管有没有意义,至少还是能学到些东西~
2016-4-14 11:01
0
雪    币: 64
活跃值: (67)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
28
感谢场外嘉宾支持!
2016-4-14 11:10
0
雪    币: 64
活跃值: (67)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
29
成功了!
2016-4-14 13:23
0
雪    币: 61
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
贴别人的代码最好还是说清楚。
2016-4-16 10:57
0
游客
登录 | 注册 方可回帖
返回
//