- 博客(6)
- 资源 (10)
- 问答 (2)
- 收藏
- 关注
原创 android框架揭秘之Java服务学习笔记
Java应用程序服务 由Activity Manager Service进行管理FooManager 是包装类,用来获取FooService的IFooService.aidl会自动生成IFooService.Stub和IFooService.Stub.ProxyBinderProxy相当于BpBinder 通过JNI到BpBinder Binder相当于BBinder通过JavaBB
2016-07-30 23:34:41 783
原创 android框架揭秘之android中c++写的服务笔记
本地系统服务都是使用本地系统服务框架实现的RPC信息仅包括RPC代码和RPC数据 + 目的信息handle和 binder协议即为 ipc数据客户端 有服务接口 服务端不仅有服务接口还要服务实现IPCThreadState位于ipc层服务使用者->BpFooService.foo()->BpBinder.transact()->IPCThreadState.transac
2016-07-30 00:37:02 1647
原创 Camera API1 从应用到CameraService分析
甜甜圈(Donut) 1.6 闪电泡芙(Éclair)2.1/frameworks/base/include/ui/ 头文件所在的目录Camera.h CameraHardwareInterface.h CameraParameters.h ICamera.h ICameraClient.h ICameraService.h在这些头文件
2016-07-23 00:23:48 3496
原创 binder驱动和内核交互笔记
进程只运行在进程固有的虚拟地址空间, 剩下的1G是内核空间 用户代码和相关库都运行在用户空间的代码区域. 两个进程共享的内核空间 binder driver是通信媒介ipc由调用服务号,调用函数名,binder协议构成handle是指服务号, 区分服务, binder driver通过handle值确定binder ipc数据传递到哪个服务中RPC代码表示待调函数 RPC数据 是传递
2016-07-15 01:05:02 2689 1
原创 zygote笔记
新的android应用程序A并非通过fork来重新装载已有进程的代码区,而是被动的加载到复制出的Dalvik虚拟机上,Zygote进程将执行流程交给应用程序A类的方法. Zygote子进程动态加载并运行Android应用程序A 通过已加载至内存中的类与资源来加快运行速度共享父进程的内存空间 需要修改才复制到自身的内存空间进行修改Zygote是由java编写的 不能由init进
2016-07-15 00:59:01 549
原创 JNI和NDK笔记
JNI与NDK JNIEnv jobject对象 访问Java对象 保存对java对象的引用 静态方法 第二个参数是jclass类 jstring 是java本地类型,占用16位,C语言中字符串仅占用8位. javah -jni HelloJNI g++ -shared -I /usr/java/jdk1.5.0_22/include/ -I /usr/java/jdk1.5
2016-07-15 00:56:29 452
android studio 中 sys 没 有 提 示
2015-05-24
stubs_offse,stubs是什么意思
2015-04-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人