使用read读取进程内存

时间:2014-04-17 07:28:34

标签: android c++ c android-ndk maps

操作系统:Android 4.3& 4.4(根)

大家好,我正在尝试阅读其他流程'通过调用read()来调用内存,可以读取大多数进程,但有些进程可以读取,我在下面列出了结果:

  1. / system / bin / surfaceflinger return -1
  2. / system / bin / surfaceflinger loss 4096
  3. / system / bin / rmt_storage return -1
  4. / system / bin / mediaserver return -1
  5. / system / bin / keystore return -1
  6. / system / bin / qseecomd return -1
  7. / system / bin / hvdcp return -1
  8. system_server return -1
  9. com.android.systemui return -1
  10. com.android.systemui loss 4096
  11. com.android.launcher return -1
  12. com.android.launcher loss 4096
  13. 我的流程:
    1.调用ptrace()来附加
    2.调用waitpid()暂停
    3.从地图获取地址并从mem

    中读取

    "返回-1"表示read()返回-1。 "损失4096"表示read()的返回值小于我的请求,它有4k字节丢失(例如,我请求了16k,但只返回了12k,即使它没有到达终点)。

    我想原因可能来自它的特殊属性,但根本原因是什么? 谢谢! (所有地址都是从地图中提取的)

0 个答案:

没有答案