Android Common
文章平均质量分 68
HusterAwan
这个作者很懒,什么都没留下…
展开
-
Android Binder- 一次完整的通信过程
Binder- 一次完整的通信过程原创 2015-07-19 09:50:48 · 783 阅读 · 0 评论 -
Android Java层 Looper 机制
写在前面本节主讲Android消息循环机制中java 部分:Jave层的Looper,MessageQueue,Handler,涉及到native部分会先做简单解释跳过。后续会在第三节将jave与native 层串联起来。 涉及到的相关java的文件路径:Looper.java (android-5.1.0_r3\frameworks\base\core\java\android\os)Mes原创 2015-07-19 11:27:31 · 6173 阅读 · 1 评论 -
Android Common 整理
Android Binder Driver系列 涉及到的 linux kernel相关知识点 一次完整的通信过程-简要flow binder driver 通信详细分析Looper 系列 Android Java层 Looper 机制 Android Native Looper 机制 Android Native Looper机制 - 监听文件描述符原创 2015-07-19 20:37:16 · 571 阅读 · 0 评论 -
Android Native Looper机制 - 监听文件描述符
Navite Looper 除了提供message机制之外,还提供了监听文件描述符的方式。 通过addFd()接口加入需要被监听的文件描述符。 int addFd(int fd, int ident, int events, Looper_callbackFunc callback, void* data); int addFd(int fd, int ident, int ev原创 2015-07-19 11:25:44 · 5169 阅读 · 0 评论 -
Android Binder-涉及到Linux kernel相关知识点
涉及到Linux 内核相关知识点: 1.工作队列http://www.ibm.com/developerworks/cn/linux/l-cn-cncrrc-mngd-wkq/即涉及到内核线程。作用是将一些不紧急的任务都到工作队列中推迟执行,避免在一次中断过程做耗时的任务。在Android Binder Driver的作用是:将flush & release 动作放到工作队列中进行。flush:原创 2015-07-19 10:03:52 · 1077 阅读 · 0 评论 -
Android binder driver 分析
1. binder_ioctlstatic long binder_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)首先调用binder_get_thread从该proc的thread红黑树找到对应该线程的binder_thread结构体。thread = binder_get_thread(proc);binder_ge原创 2015-07-19 10:46:59 · 1219 阅读 · 0 评论 -
[M0]Android Native层Looper详解
前言我们知道Java 层的Looper 的消息队列在没有消息处理的时候,会wait在MessageQueue.next() 函数里,对于MessageQueue.next() 函数是如何实现的wait,却是一知半解。而且Android Framework部分有很多在Native层使用Looper 监听文件描述符的用法,比如InputDispatcher等,了解Android Native 层Looper的实现,可以原创 2015-07-19 11:24:47 · 5240 阅读 · 1 评论