上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 32 下一页
摘要: 为了测试docker的挂载权限,把宿主机的/etc/passwd文件挂载到了虚机当中,进入虚机想看下能不能直接对我宿主机上的文件进行操作,把/etc/passwd删掉了最后十行。。。结果宿主机上的/etc/passwd也改了,于是你sudo功能根本就不能用了。。。。。,FUCK! 还好,在网上查了下 阅读全文
posted @ 2018-07-29 11:40 honpey 阅读(551) 评论(0) 推荐(0) 编辑
摘要: 为了测试docker的挂载权限,把宿主机的/etc/passwd文件挂载到了虚机当中,进入虚机想看下能不能直接对我宿主机上的文件进行操作,把/etc/passwd删掉了最后十行。。。结果宿主机上的/etc/passwd也改了,于是你sudo功能根本就不能用了。。。。。,FUCK! 还好,在网上查了下 阅读全文
posted @ 2018-07-29 11:24 honpey 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 0x7fffffffdb30: 0x00000000 0x00000000 0xf7ffe700 0x0000001a0x7fffffffdb40: 0xffffdc98 0x00007fff 0xf7de1b1f 0x00007fff0x7fffffffdb50: 0xffffdb70 0x000 阅读全文
posted @ 2018-07-22 13:49 honpey 阅读(884) 评论(0) 推荐(0) 编辑
摘要: 0x7fffffffdb58: 0x004005ba 0x00000000 0x00000000 0x00000000 < funcb的栈帧 [0x7fffffffdb60, 0x7fffffffdb80],其中a=0x1a,其中这个栈的栈底是返回地址4005d0x7fffffffdb68: 0x0 阅读全文
posted @ 2018-07-22 13:25 honpey 阅读(568) 评论(0) 推荐(0) 编辑
摘要: 从结构体stack_dump入手, util/unwind-libunwind-local.c 中有函数access_mem 是如何处理栈帧的 然后发现access_mem调用了好多次,可能是因为用户栈大小的问题,是怎么 编译了binary,但是并没有正确解析出函数调用栈,这是因为在我系统的lib6 阅读全文
posted @ 2018-07-20 23:02 honpey 阅读(989) 评论(0) 推荐(0) 编辑
摘要: dwarf是如何处理栈帧的? DW_AT_frame_base 表明函数栈帧的起始点 95 < 1><0x000000ca> DW_TAG_subprogram 96 DW_AT_external yes(1) 97 DW_AT_name "funcb" 98 DW_AT_decl_file 0x0 阅读全文
posted @ 2018-07-18 01:04 honpey 阅读(1012) 评论(0) 推荐(0) 编辑
摘要: dwarf是如何处理的栈帧呢? 首先看下非dwarf的情况是如何处理栈帧的: 我们可以看到,这里的0x400689,0x400664,0x4005b0都是栈中的下一跳ip的地址,但是对于dwarf的格式,中间却没有任何的用户栈的信息 可见中间毫无用户态的栈出现,dwarf到底是怎样解析的用户栈?难道 阅读全文
posted @ 2018-07-16 03:19 honpey 阅读(1214) 评论(0) 推荐(0) 编辑
摘要: 栈帧!栈帧!今天就把栈帧给弄清楚!有一个函数调用关系-->main -->print -->add -->funca -->funcb -->funcc在函数funcc函数处设置断点,由于用户态栈是由高到低扩展:当函数执行到(gdb) print $sp$1 = (void *) 0x7ffffff 阅读全文
posted @ 2018-07-15 23:31 honpey 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 如果perf record -c -c后面接的是sample_period,也就是说你让这个事件没 我的loop进程一直在执行,我的CPU的频率是2.6G hz,也就是说每一秒会有2,600,000,000个时钟周期,那么我sample_period设置成1000的时候 所以-c 是指发生多少次事件 阅读全文
posted @ 2018-07-11 00:56 honpey 阅读(511) 评论(0) 推荐(0) 编辑
摘要: 当perf stat -e branches 是统计 再看perf record,perf record是为了是记录时间发生的时候的调用栈, 在我的测试代码中总共有200,000,000条branch的命令,但是为啥我只看到了1964这样一个数量级的采样呢? perf record设置了采样的频率吗 阅读全文
posted @ 2018-07-10 23:23 honpey 阅读(3846) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 32 下一页