随笔-117  评论-12  文章-0 
  2017年6月21日
摘要: eventpoll是一种文件,它实现了一种机制利用一条rdllist队列来避免阻塞地进行poll。eventpoll归根到底还是在使用poll。而ET比LT高效,并不在于是否使用了poll,更不能说是因为LT使用了poll。通过阅读源代码就可以清楚看到对 ET 和 LT 处理的区别仅有一处,其余都相阅读全文
posted @ 2017-06-21 17:52 bbqz007 阅读(35) 评论(0) 编辑
  2017年6月9日
摘要: .rodata 只读字符串保护手段阅读全文
posted @ 2017-06-09 19:31 bbqz007 阅读(5) 评论(0) 编辑
摘要: python编译移植到测试机,并且移植ctypes模块。利用ctypes代替c程序,利用dalvik内部c++函数,在运行过程中手动命令操控dalvik虚拟机,并结合gdb进行调试。绕过zygote和ASM去启动进程。 由于我使用手动创建虚拟机,而不是通过zygote去启动虚拟机,zygote会通过阅读全文
posted @ 2017-06-09 17:09 bbqz007 阅读(6) 评论(0) 编辑
  2017年6月5日
摘要: 首先要确保你所使用的gdb和gdbserver是配对的,最好(或必须)是sdk内相同platform(api level)下的gdb和gdbserver。否则你使用的gdb可能与运行测试机上的gdbserver,因为协议不兼容,而不能正常调试。 gdb 连接后提示,"Argument to arit阅读全文
posted @ 2017-06-05 20:41 bbqz007 阅读(6) 评论(0) 编辑
摘要: 使用 libdvm.so 内部函数dvm* 加载 dex阅读全文
posted @ 2017-06-05 19:22 bbqz007 阅读(61) 评论(0) 编辑
  2017年5月26日
摘要: 一次逆向加固apk的总结。阅读全文
posted @ 2017-05-26 19:51 bbqz007 阅读(8) 评论(0) 编辑
  2017年5月23日
摘要: 最近在x86的内核上,使用/proc/kcore调试分析内核信息时,发现这个arch下编译的/proc/kcore不能正常工作。调试其文件系统的模块后,发现竟与内存管理模型配置有关,最后使其正常工作。阅读全文
posted @ 2017-05-23 20:07 bbqz007 阅读(57) 评论(0) 编辑
  2017年5月11日
摘要: 抢断调度,是调度机制对实时系统需要的支持,是一种快速响应的重调度机制。既然与重调度有关,那么就先回顾一下调度和重调度。 调度分两种情况,1. 一种是自愿调度,由代码主动调用schedule来让度cpu,例如sleep,mutex,sema等阻塞等待。另外,当一个进程(或线程)走到尽头(do_exit阅读全文
posted @ 2017-05-11 19:54 bbqz007 阅读(8) 评论(0) 编辑
摘要: kernel中有两个rcu的实现,一个是tiny rcu,另一个是tree rcu。这两种rcu的前身都是classic rcu。如果要阅读classic rcu的实现代码,必须找kernel 2.6.26,因为在kernel 2.6.27,classic rcu开始转型为使用tree node的s阅读全文
posted @ 2017-05-11 18:51 bbqz007 阅读(7) 评论(0) 编辑
  2017年5月5日
摘要: pthread_cond的实现使用了几个futex来协同进行同步,以及如何来实现的。阅读全文
posted @ 2017-05-05 17:20 bbqz007 阅读(21) 评论(0) 编辑