- 博客(21)
- 收藏
- 关注
原创 查看系统可分配连续内存大小
cat /proc/buddyinfocat /proc/pagetypeinfoFree pages count per migrate type at order 0 1 2 3 4 5 6 7 8 9 10这里的0到10,分别对应2的0次方到2的10次方pages也就
2014-07-28 14:29:46
1369
原创 利用shc加密生成可以在手机里执行的程序
加密:编译生成shc可执行文件并转换sh到c源文件cd ~/buildsh/shc-3.8.9make./shc -r -f sample_r1.2.sh搞一个arm-linux-gcc 4.4.3的tar包或者现成的环境[现成环境可能缺少某些头文件导致后面c文件编译不过]做一个交叉编译环境export PATH=$PATH:~/buildsh/4.4.3/binarm
2014-07-18 16:15:12
1840
1
原创 内存泄漏调试-调Native Heap
$ adb shell setprop libc.debug.malloc 1 $ adb shell stop $ adb shell startOpen C:\Users\ian\.android\ddms.cfgAdd a line "native=true"打开DDMS,点Native Heap标签,就可以Snapshot了
2014-07-09 10:15:23
1080
原创 高通平台采用gpu-mmu的时候发生显存耗完而整个系统内存尚有的情况导致crash和重启
原因在于kgsl_mmu.c中,定义了gpu使用的内存大小,7x30中限定了256MB,当显存耗光而内存尚剩余很多的时候就会发生问题:不能触发LMK或OOM来释放内存,而又没有显存可用,进而可能引起各进程watchdogtimeout,如果系统进程发生watchdogtimeout,会导致system serverrestart,而restart之后也不能释放gpu显存,会一直反复重启:
2014-06-26 08:35:16
2995
4
原创 通过ddms无法检查的内存泄漏如何查
Ps找到对应的进程pidadb shell cat /proc/pid/smaps > d:smaps_data001.txtadb shell cat /proc/pid/smaps > d:smaps_data002.txt比较这2个文件差异
2014-06-24 14:04:31
646
原创 kernel内存泄漏的调试
\boot\kernel\lib\Kconfig.debug 修改config DEBUG_KMEMLEAK_EARLY_LOG_SIZE中default 400为4000,因为400会泄漏,kernel调用log_early刚好401次,刚刚把400次耗光,导致log_early中满足crt_early_log >= ARRAY_SIZE(early_log)进而kmemleak_disab
2014-06-23 09:59:06
2119
原创 rex os延时回调的实现
clk_cb_type chg_reset_allowed_delay_call_back;//声明一个timerclk_def(&chg_type_detect_delay_call_back);//初始化这个timer void tmc_chg_type_detect_cb(int4 dummy)//声明并实现一个回调函数{ //
2014-06-18 15:21:10
634
原创 android模块版本控制
模块的makefile文件中都有下面的tagLOCAL_MODULE_TAGS:=user eng tests optionaluser:指该模块只在user版本下才编译eng: 指该模块只在eng版本下才编译tests:指该模块只在tests版本下才编译optional:指该模块在所有版本下都编译注意,user版本不能模块化编译,所以要验证需要完整重编整个项目
2014-06-18 15:19:19
480
原创 android调试时候的堆栈打印
../boot/frameworks/native/libs/utils/CallStack.cpp的dump函数中的ALOGD打印改为ALOGE,并重编libutils.so打印堆栈的文件里:#include CallStack stack; stack.update();stack.dump();
2014-06-17 10:03:01
854
原创 利用addr2line来定位问题
[] (msmfb_suspend+0x1c/0x2c) from[] (early_suspend+0xf8/0x1a4)[] (early_suspend+0xf8/0x1a4) from[] (worker_thread+0x14c/0x240)[] (worker_thread+0x14c/0x240) from[] (kthread+0x88/0x90)[] (kthread
2014-06-16 09:24:26
1058
原创 android app不受build.prop中的dalvik heapsize限制
dalivik的heap配置一般在下述文件中:\frameworks\native\build\PRODUCT_PROPERTY_OVERRIDES += \ dalvik.vm.heapstartsize=4m \ dalvik.vm.heapgrowthlimit=32m \dalvik.vm.heapsize=64m第一个是每个dalvik
2014-06-13 09:27:49
1446
原创 zram和swap
首先谈下EMMC上做个swap分区,经验:只会更差,速度会更差,试过这个方案后,睡眠唤醒后非常慢。内存优化一般有几个方向:1) 具体内存消耗比较大的应用,存在泄漏的应用2) 内存裁剪、资源优化、显存裁剪(咨询高通)3) AMS的trimapplication和kernel的lowmemorykiller的两个调度机制优化。4) zram、swapzram是个以内存为
2014-06-13 08:55:42
6130
原创 编译默认root的android的user版本
在adb.c里面修改if (should_drop_privileges()),直接修改为if(should_drop_privileges() 因为默认user版本中should_drop_privileges() 返回值为true。
2014-06-11 21:07:33
1657
原创 objdump 反汇编
cd ./boot/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/./arm-eabi-objdump -S omx_base_trsc.o 2>&1 | tee disassemble.txt
2014-06-11 20:56:20
542
原创 Mantis无法上传附件
网站根目录下建upload目录,然后修改config_inc.php如下# --- Attachments / File Uploads --- $g_allow_file_upload = ON; $g_file_upload_method = DISK; # or DATABASE $g_absolute_path_default_upload_folder = 'upload
2014-06-11 20:51:00
2338
原创 notepad中文复制乱码的问题
工具栏中:设置---->语言格式设置 选择主题:Default(stylers.xml)字体格式拉到最下面,选择中文格式的字体,选择自己习惯的格式。我选择了 字体:微软雅黑 字体大小:10同时勾选 使用全局字体,使用全局字体大小,使用全局粗体样式
2014-06-10 21:23:37
2677
原创 Putty显示中文
打开putty主程序,选择window-〉Appearance-〉Font settings-〉Change...,选择Fixedsys字体,字符集选择CHINESE_GB2312。在window-〉Appearance-〉Translation中,Received data assumed to be in which character set 中,把Use font encodi
2014-06-10 21:21:15
553
原创 Linux下代码阅读编辑工具推荐
gvim+taglist+cscope或者emacs+cscopescreen emacs vim global cscope
2014-06-10 11:09:35
633
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人