Android Binder驱动数据结构图解

Posted by Bill on May 21, 2019

1.背景

本文主要希望通过图解的方式梳理清楚Binder驱动的数据结构和基本操作流程,帮助理解Binder通信的本质。首先展示一张 Binder数据结构的合集图:

大图链接 binder_proc

2. Binder驱动数据结构

2.1 binder_proc

大图链接 binder_proc

2.2 binder_thread

大图链接 binder_thread

2.3 binder_ref

大图链接 binder_ref

2.4 binder_node

大图链接 binder_node

2.5 binder_transaction

大图链接 binder_transaction

2.6 binder_buffer

大图链接 binder_buffer

2.7 binder_write_read

大图链接 binder_write_read

2.8 binder_ref_death

大图链接 binder_ref_death

2.9 binder_driver_command_protocol

大图链接 binder_driver_command_protocol

2.10 binder_driver_return_protocol

大图链接 binder_driver_return_protocol

大图链接 binder_ptr_cookie

2.12 binder_transaction_data

大图链接 binder_transaction_data

2.13 flat_binder_object

大图链接 flat_binder_object