1. Android binder 代码层次
2016-03-05 17:05:31 0 举报
android binder code layer
作者其他创作
大纲/内容
Application
App FWK
/dev/binder
/proc/state等
模块: Service Manager路径: (frameworks/native/cmds/servicemanager) |-- binder.c|-- binder.h`-- service_manager.c二进制文件: /system/bin/servicemanager
Native FWK
模块: Binder Java路径: (frameworks/base/core/java/android/os) |-- Binder.java|-- IBinder.java|-- Parcel.java|-- ServiceManager.java|-- IServiceManager.java`-- IInterface.java库/包: framework.jar
模块: Binder JNI路径: (frameworks/base/core/jni) |-- android_os_Parcel.cpp|-- android_util_Binder.cpp库/包: libandroid_runtime.so
模块: libbinder.so路径:frameworks/rs/cpp/utils (RefBase.h等)|-- RefBase.h|-- StrongPointer.h`-- TypeHelpers.hframeworks/native/include/binder (binder.h等)frameworks/native/libs/binder |-- AppOpsManager.cpp|-- Binder.cpp|-- BpBinder.cpp|-- BufferedTextOutput.cpp|-- Debug.cpp|-- IAppOpsCallback.cpp|-- IAppOpsService.cpp|-- IInterface.cpp|-- IMemory.cpp|-- IPCThreadState.cpp|-- IPermissionController.cpp|-- IServiceManager.cpp|-- MemoryBase.cpp|-- MemoryDealer.cpp|-- MemoryHeapBase.cpp|-- Parcel.cpp|-- PermissionCache.cpp|-- ProcessState.cpp|-- Static.cpp`-- TextOutput.cpp库: libbinder.so
Kernel空间
binder driver模块:./kernel/drivers/staging/android|-- binder.c|-- binder.h|-- binder_trace.h这是一个驱动,在kernel初始化时,device_initcall就会调用binder_init()完成:1. 生成/dev/binder2. 生成/proc其它重要的文件
0 条评论
下一页