您的位置:首页 > 移动开发 > Android开发

android binder

2015-09-07 15:31 363 查看
Overview



http://blog.csdn.net/myarrow/article/details/7045078

Linux device driver model

a new device object:

/sys/devices/virtual/misc/binder/

device file

/dev/binder

VFS operations

drivers\staging\android\binder.c

init:

binder_init ->misc_register ->device_create

bind_open:

  create a new binder_proc, add to binder_procs, link to filp->private_data

binder_mmap:

   详见mmap进行内存映射的原理

  http://blog.chinaunix.net/uid-26669729-id-3077015.html

1.在用户虚拟地址空间中寻找空闲的满足要求的一段连续的虚拟地址空间,为映射做准备(由内核mmap系统调用完成)

2. 建立虚拟地址空间(第一部中建立的地址空间)和文件或设备的物理地址之间的映射(设备驱动完成)()

bind_ioctl()

   for service manager:  BINDER_SET_CONTEXT_MGR, create a new binder_node

   

bind_ioctl(, BINDER_WRITE_READ, )

    write/read data

insight source code 

refer to mediaservice

frameworks\av\media\mediaserver\Main_mediaserver.cpp



to define a service



refer:

http://www.cnblogs.com/innost/archive/2011/01/09/1931456.html

<Understanding the Linux Kernel>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android binder ipc