[英]image rotation not working on Samsung Galaxy Nexus android
[英]Memfetch with Android Samsung Galaxy Nexus
因此,我嘗試使用memfetch從我的Samsung Galaxy Nexus轉儲特定進程的內存。
我從http://lcamtuf.coredump.cx/下載了memfetch
使用以下命令提取其內容:
tar -xvf memfetch.tgz
在我的memfetch目錄中運行ls
:
ls
COPYING Makefile memfetch.c mffind.pl README
在這個階段,我應該運行make命令來獲取我的memfetch可執行文件。
編輯memfetch.c
文件,我刪除了#include page.h
行
因此,我首先使用以下命令下載了Android ARM體系結構。 這是用於memfetch的靜態交叉編譯:
apt-get install gcc-arm0-linux-gnueabi
然后我在以下區域編輯了Makefile
:
FILE = memfetch
CFLAGS = -Wall -09 -static
CC = arm-linux-gnueabi-gcc
如此成功,我有了memfetch可執行文件:
make
arm-linux-gnueabi-gcc -Wall -09 -static memfetch.c -o memfetch
ls
COPYING Makefile memfetch memfetch.c mffind.pl README
然后我將memfetch可執行文件推送到我的Android手機中:
adb push memfetch /sdcard/memfetch
現在從這里開始,我用手機工作。 我執行了adb shell
命令,並創建了一個目錄來存儲memfetch exectable,理想情況是從那里運行它:
adb shell
su
cd /sdcard
mkdir tmp
mount -t tmpfs tmpfs tmp
cp memfetch tmp
cd tmp
chmod 6755 memfetch
現在這是問題所在。 當我執行memfetch時,出現以下錯誤:
./memfetch 1197
memfetch 0.05b by Michal Zalewski <lcamtuf@coredump.cx>
Usage ./memfetch [ -sawn ] [ -S xxx ] PID
-s - wait for fault signal before generating a dump
-a - skip non-anonymous maps (libraries etc)
-w - write index file to stdout instead of mfetch.lst
-m - avoid mmap(), helps to prevent hanging on some 2.2 boxes
-S xxx - dump segment containing address xxx (hex) only
無論我嘗試轉儲什么PID,我總是會遇到相同的錯誤。 我什至嘗試了各種標志組合,但是它們都不起作用:(
感謝您提供高級幫助,如果需要任何其他信息,請告訴我。
那是由於Windows命令行的愚蠢,使一些空字符作為linux命令的輸入。
解決方案是,如果您不使用其他輸入“ samwS”在此行中添加注釋,
while ((opt=getopt(argc,(void*)argv, "+samwS:h"))!=EOF) switch(opt) { case 's': waitsig=1; break; case 'a': skipmap=1; break; case 'w': textout=1; break; case 'm': avoid_mmap=1; break; case 'S': if (sscanf(optarg,"%x",&onlyseg)!=1) fatal("Incorrect -S syntax (hex address expected).\\n"); break; default: usage(argv[0]); }
如果您使用它們,只需注釋default: usage(argv[0]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.