Android源码
文章平均质量分 65
Thundawk
http://weibo.com/nutsryan欢迎互粉
展开
-
一些问题解决方案
方案商给的一个应用的源码结果导入到eclipse里狂报错~~没办法问问他们怎么解决的1最简单最快的方法就是不管他报错~~直接再eclipse里面改 反正最后再linux下编译但是感觉很不爽2工程报错的主要原因是~~~再工程中使用了源码当中很多的类中的API但是这些API并不让你调用~~~就是@hide的这样的话我们就需要将报错的类在源码里面找到更改过后再重新生成sdk转载 2012-03-06 13:40:20 · 720 阅读 · 0 评论 -
heap gc1
void dvmCollectGarbageInternal(const GcSpec* spec){ GcHeap *gcHeap = gDvm.gcHeap; u4 gcEnd = 0; u4 rootStart = 0 , rootEnd = 0; u4 dirtyStart = 0, dirtyEnd = 0; size_t numOb原创 2014-08-27 19:01:30 · 697 阅读 · 0 评论 -
Ubuntu下的Android开发平台配置(输入法的安装和svn客户端的安装)
1、下载所需软件jdk-linux,eclipse,Android SDK2、终端进入jdk目录赋予权限 $ sudo chmod u+x jdk-6u14-linux-i586.bin 2、解压jdk-linux到到主目录下 $sudo ./jdk-6u14-linux-i586.bin3、配置linux下的环境变量: $sudo gedit /etc/envirome原创 2011-07-03 10:25:44 · 362 阅读 · 0 评论 -
heap in dalvik
/* Try as hard as possible to allocate some memory. */static void *tryMalloc(size_t size){#ifdef HAVE_ANDROID_OS char prop_value[PROPERTY_VALUE_MAX] = {'\0'};#endif char* hprof_fil原创 2014-08-27 18:52:08 · 361 阅读 · 0 评论 -
android dalvik heap管理,androiddalvik
最近遇到了一个dalvik memory相关的问题,对dalvik的heap管理部分做了一些了解,在此总结一下,主要是下面3个方面的内容:1,java heap的实现,和native heap的差异。2,gc的实现。3,配置heap的相关prop的含义。davlik java heap---------------------------------------------------------转载 2014-08-22 16:58:04 · 512 阅读 · 0 评论 -
android源代码下载
最近google的源代码地址被墙了,表现为 未预期的符号 `newline' 附近有语法错误,所以我们需要另辟战场1. bin里的repo从这里得到http://code.google.com/p/git-repo/, 也可以这样 curl http://git-repo.googlecode.com/files/repo-1.13 > repo2. 修改repo里的h转载 2012-03-09 10:27:11 · 525 阅读 · 0 评论 -
heap gc2
void dvmHeapScanMarkedObjects(void){ GcMarkContext *ctx = &gDvm.gcHeap->markContext; assert(ctx->finger == NULL); /* The bitmaps currently have bits set for the root set.原创 2014-08-27 19:02:44 · 657 阅读 · 0 评论 -
heap gc3
//遍历bitmap,找到垃圾对象的指针,回调相关函数void dvmHeapBitmapSweepWalk(const HeapBitmap *liveHb, const HeapBitmap *markHb, uintptr_t base, uintptr_t max, Bi原创 2014-08-27 19:04:48 · 519 阅读 · 0 评论 -
Android学习 StateMachine与State模式
Android学习 StateMachine与State模式一 State模式意图: 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。(Objects for States) 对象内部状态决定行为方式,对象状态改变行为方式改变;但这里为何要强调内部状态,外部状态改变也同样会影响行为方式的改变,通常外部状态的改变都会反映到内部状态上转载 2012-11-03 11:12:00 · 281 阅读 · 0 评论 -
Dalvik虚拟机 Finalize 方法执行分析
Finalize 方法是java object在被heap完全回收之前,一定会被调用的方法。但是,虚拟机规范不保证该方法会在什么时候执行。前段时间,有个在native out of memory的bug,就是因为android的cts中有个leakmemory测试,会大量分分配native内存,然后在finalize中释放。但是由于lemur并没有及时的保证执行finalize方法导致虚拟地址用完转载 2014-08-18 15:55:17 · 977 阅读 · 0 评论 -
heap alloc
/* Try as hard as possible to allocate some memory. */static void *tryMalloc(size_t size){#ifdef HAVE_ANDROID_OS char prop_value[PROPERTY_VALUE_MAX] = {'\0'};#endif char* hprof_fil原创 2014-08-27 18:52:51 · 704 阅读 · 0 评论 -
heap initial
1.runSelectLoop -->runOnce --> Zygote.forkAndSpecialize -->nativeForkAndSpecialize --> Dalvik_dalvik_system_Zygote_forkAndSpecialize -->forkAndSpecializeCommon --> dvmGcPreZygoteFork --> d原创 2014-08-29 18:04:14 · 411 阅读 · 0 评论 -
Android内存管理原理(转)
一般来说,程序使用内存的方式遵循先向操作系统申请一块内存,使用内存,使用完毕之后释放内存归还给操作系统。然而在传统的C/C++等要求显式释放内存的编程语言中,记得在合适的时候释放内存是一个很有难度的工作,因此Java等编程语言都提供了基于垃圾回收算法的内存管理机制:垃圾内存回收算法常见的垃圾回收算法有引用计数法(Reference Counting)、标注并清理(Mark an转载 2014-07-10 16:42:54 · 422 阅读 · 0 评论 -
总结
经过若干天的折腾,终于,看到了自己编译的android系统了,现把过程这几天的编译心得写下来的,以做记录。这其中遇到了不少的困难,不过凭借着对linux的一点基础知识,还是一个一个的给解决了。首先要说的一点是的,做这个工作,对于互联网的依靠真的很大,编译的过程中遇到的困难,都是一点一点的在网上搜索,依靠前人的经验,才取得了最后的成功。在此,先谢过。 首先,下载android源码,这转载 2012-03-06 16:36:43 · 450 阅读 · 0 评论 -
Android之system_server与zygote之作用
第三天,google说,伊甸园(linux世界)要被隔离,于是便创造了亚当(Adm)与夏娃(Eve),称它为zygote和system_server--xxx第二天,init跑完了,它对于android系统,最重要的,就是启动了zygote和system-server,谁是Adam谁是Eve?从分析init.rc来看?--start-system-server只是个转载 2014-10-11 17:07:17 · 519 阅读 · 0 评论