![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
4.5Binder system
4.5Binder system
qq_34738528
这个作者很懒,什么都没留下…
展开
-
2.binder驱动层原理
本章关键点总结 & 说明:思维导图在系统核心机制binder这一部分中也是持续不断迭代的,随着对binder的不断分析和讲解,导图内容也不断增多。这里主要关注➕ Binder驱动 部分即可。本章节我们主要从驱动的角度来解读binder,首先要搞清楚的就是IPC通信机制,这就少不了基础知识,因此第一部分对基础做一个讲解,接下来对驱动的关键3大流程进行讲解,内容拷贝机制,最后谈谈transaction stack机制(数据传输时从源 发给 目标,目标怎么知道是 源发的呢)和serve...原创 2020-10-27 14:33:10 · 488 阅读 · 0 评论 -
1.C语言简谈binder
本章关键点总结 & 说明:上面的导图描述了Binder框架中主要几个部分,同时本章节主要通过Bctest的案例 对Binder原理进行简单说明。binder系统概述:Binder系统是一种基于IPC的RPC (远程过程调用)通信机制android为什么要引入binder通信机制?Binder使用Client-Server通信方式 安全性好,简单高效 面向对象的设计 独特的接收缓存管理和线程池管理方式这里从C层的binder进行分析,因为这是android原生系统给出的案.原创 2020-10-27 10:26:19 · 292 阅读 · 0 评论 -
5.6.7Binder系统_驱动情景分析_transaction_stack机制_REPLY
回顾通过前面的学习我们知道,binder通信涉及搭配两个进程,A,B:A发送一个BC_TRANSACTION消息给驱动,驱动把其转化为BR_TRANSACTIONB转发给B。B接收到一个类型为BR_TRANSACTIONB的数据,然后发送一个BC_REPLY的消息给驱动,驱动把其转化为BR_REPLY,然后回复给A进程。简单概述在前面的分析中,我们没有详细的分析,驱动...原创 2020-03-12 15:39:45 · 408 阅读 · 0 评论 -
5.6.4Binder系统_驱动情景分析_服务注册过程分析
在第6课第一小节中,test_server.c文件中,我们注册了两个服务,分别为"hello"与"goodbye"服务,为了方便分析,我们现在只注册"hello"服务,把"goodbye"服务注释掉,然后重新编译,下载到开发板。service_manager分析打开service_manager文件,我们从main函数看起main() binder_loop(bs...原创 2019-11-14 20:05:11 · 167 阅读 · 0 评论 -
5.6.1Binder系统_驱动情景分析_数据结构
分析该小节为额外了解小节,Binder驱动是amdroid底层支持之一,如果深入了解Binder当然能更好的理解使用Binder驱动的程序和库,但是不想了解也没有关系,就好像一个厨师会炒蛋就行了,并不需要他了解蛋的成分。所谓的情景分析,就是沿着驱动程序对源码进行分析,我们后面会引入以下概念:binder_refbinder_nodebinder_procbi...原创 2019-11-14 19:58:11 · 213 阅读 · 0 评论 -
5.2Binder系统-C程序示例_编写程序
目录回顾test_client.c简单逻辑如下test_server.ctest_server.h简单调用逻辑如下Makeflebinder.cbinder.hservice_manager.c程序编译编译错误记录错误1错误2错误3错误4错误4错误5错误6处理警告实验体验回顾上一小节介绍了...原创 2019-11-14 19:48:54 · 238 阅读 · 0 评论 -
5.Binder系统-C程序示例_框架分析
目录分析源码总体分析servicemanagerserviceclient源码追踪service_manager.cbctest.cbinder.c分析这一章节我们讲解android中的Binder系统,该章节是一个比较难理解的章节,不过没关系,我们可以慢慢的学习。在Binder系统中,有两大核心,分别为IPC(Information Proce...原创 2019-11-13 19:58:40 · 303 阅读 · 0 评论