摘要: 本来是发表在《程序员》杂志的,结果编辑整理成一篇书评,内容和深度都大幅缩水,今天把原文post出来,希望能抛砖引玉。我正式接触Android的准确时间应该在2010年9月份。那段时间,老听到公司有人说Donut,CupCake、Eclair等非常奇怪的词(直到现在,我也不中意Android的版本命名),心中不禁很仰慕:竟然还有这么多我闻所未闻的东西。所以心里就特别好奇。不久,我就加入了Android的开发,第一个接触的大模块是Audio。一看代码,就发现有更多不懂的词了,什么Binder、AudioFlinger、sp、wp等等。当时,我记得买了韩超老师的《Android系统原理及开发要点详解 阅读全文
posted @ 2012-10-14 21:48 innost 阅读(4136) 评论(0) 推荐(2) 编辑
摘要: 由于工作关系,对Android关注将从FWK(Framework)转向BSP,也就是Linux Kernel。在工作的5年中,曾经数次研究过kernel,但一直没有合适的机会或者说推动力去深入研究。这次有机会了,岂能放过呢?以前搞kernel,总是觉得没有合适的设备,都玩不转。最近琢磨了几天,打算从android虚拟设备goldfish开始吧。(惭愧啊,以前还买过一个板子,结果完了2天就腻味了)。本随笔包括一下几个部分:先介绍Android kernel的下载和编译。配置模拟器以使之使用我们编译的kernel。介绍下输入系统方面的内容。我的目标是在最短的时间内把Android的驱动撸一遍。在这 阅读全文
posted @ 2012-09-08 22:04 innost 阅读(7519) 评论(12) 推荐(6) 编辑
摘要: http://kuai.xunlei.com/s/iAL2CLigNIt4ZmxzpdSjyw 但只支持7天。NND。兄弟们赶紧下载。 阅读全文
posted @ 2012-08-23 21:13 innost 阅读(522) 评论(0) 推荐(0) 编辑
摘要: 今天有点激动,因为看了一下刘未鹏的《暗时间》,发了几篇微博,觉得可以记下来。阿拉神农 <暗时间>:很多程序员感叹跟不上新技术,解决办法:抓住不变量,大量的新技术其实只是一层皮,背后的支撑技术其实十来年都不变。底层知识、算法数据结构、基本的程序设计理论、良好的编码习惯、分析解决问题的能力、强大的学习能力和旺盛的求知欲、大脑的思维方式永远都不过时!《===确实说到点子上了阿拉神农 所以,对于我这种半路出家的人来说,花了很长时间在学习基础知识。当然,我在别的行业中得到的学习能力、分析和解决问题的能力在IT行业也发挥了极大的作用。从某个角度来说,知识,真的是相通的。阿拉神农 刘末鹏的《暗时 阅读全文
posted @ 2012-08-10 21:50 innost 阅读(1084) 评论(0) 推荐(0) 编辑
摘要: 本来将4.1的AOSP源码打包放在115网盘上,结果最近几天说取消了大众共享。MD! 解决办法是大家加我为好友,每天我会2-3次共享源码给好友。 另外,希望下载完的兄弟姐妹们也共享相关源码。 我在115上的账户是 fanping.deng@gmail.com 谢谢大家的支持 阅读全文
posted @ 2012-08-09 16:26 innost 阅读(2857) 评论(2) 推荐(0) 编辑
摘要: http://book.360buy.com/11056661.html欢迎兄弟姐妹们提bug! 阅读全文
posted @ 2012-08-03 18:23 innost 阅读(848) 评论(0) 推荐(0) 编辑
摘要: 这篇文章来自公司的一封Q/A邮件。背景是想知道目前市面上的应用是否能在多核手机上性能有成倍增加。所以,自然而然就会问到一个基本问题,如何判断android中一个应用是否为多线程。这里简单扯一下多核的知识。我最早接触多核知识是2008年末到2009年初。背景很简单,我是做高性能网络数据传输服务器的,类似FTPServer一样。服务器的吞吐能力最好是随着CPU核数的增加成倍增长.。根据多核并行的知识,这是最理想的情况(有一个公式,可以计算性能和CPU核数的关系),但应用内部各个线程并非完全独立。即线程是独立运行在不同CPU核上,但是线程中所干的事情却在逻辑上有关系。例如运行在线程A上的函数等待运行 阅读全文
posted @ 2012-07-27 22:23 innost 阅读(4923) 评论(5) 推荐(2) 编辑
摘要: 时间真的是很巧,本来没打算写Surface系统的(相比AudioFlinger来说,Surface变化之后的难度真的是毛毛雨了),但为了庆祝泷泽萝拉发第二部大作,我决定还是要坚持一下。下面将延续Audio的分析风格,从几个层面来介绍Surface系统的变化(JB号称在Surface这块做过大量的优质的改进,无非就是引入在PC机上早都烂熟的VSYNC,Triple Buffering。但是JB,您能确保这套机制在单核机器上跑得开么?Win Phone 单核,都比多核Android机器流畅。恐怕还是Android上层Display架构有问题吧??!)同Audio一样,想真正理解Surface系统工 阅读全文
posted @ 2012-07-18 18:17 innost 阅读(11790) 评论(3) 推荐(2) 编辑
摘要: Android 4.1,英文代号简称JB。在国人眼里,JB这个词还和动物有点关系。Google如此频繁修改Android,终于推出了一个可以被大家整天JB JB挂在嘴上的版本。以后我的文章也可以一面用JB表示版本号,一面用JB表示毛主席常说的”战略上的鄙视了“。请大家根据上下文揣摩我写下JB一词的心情。今天将稍深入得介绍一下JB 4.1在Audio系统做的翻天覆地的改动。这里先啰嗦几句:就像80后经常抱怨自己晚生了几年一样,马上就会有很多码农抱怨接触Android太晚了。为何?JB Audio系统的难度相对4.0, 2.3, 2.2已经非常非常大了。99%的情况下,在你没有看到这个NB(这不是 阅读全文
posted @ 2012-07-16 11:39 innost 阅读(14578) 评论(13) 推荐(3) 编辑
摘要: 7月13号初略看了下:1 init没有太大变化,从init.rc可以看出规则未变,但init.rc出现了一些新的设置,看来更依赖kernel的一些信息了2 app_process未有太大变化,即zygote没有变化3 SystemServer变化很大,增加了几个奇怪的service,而且有些service的启动开始受到系统属性的控制了,例如 audioService受到"system_init.startaudioservice“控制 3.1 增加昨天提到的SchedulePolicyService,用于控制媒体相关进程调度策略的调整。注意是调度策略,而不是优先级。 3.2 增加了一 阅读全文
posted @ 2012-07-13 10:26 innost 阅读(5464) 评论(1) 推荐(2) 编辑