SlideShare a Scribd company logo
Inter-process communication of Android Tetsuyuki Kobayashi 2011.6.3  updated
Who am I? 20+ years involved in embedded systems 10 years in real time OS, such as iTRON
10 years in embedded Java Virtual Machine
Now GCC, Linux, QEMU, Android, … Blogs http://d.hatena.ne.jp/embedded/  (Personal)
http://blog.kmckk.com/  (Corporate)
http://kobablog.wordpress.com/ (English) Twitter @tetsu_koba new
Today's topic Inter process communications in Android
Inter process method invocation using Binder
Ashmem
System Properties
Processes running on Android $ ps ... root  37  1  248  156  c00aef2c 0000875c S /sbin/ueventd system  42  1  768  260  c022950c afd0b6fc S /system/bin/servicemanager root  43  1  3824  564  ffffffff afd0bdac S /system/bin/vold root  44  1  3796  560  ffffffff afd0bdac S /system/bin/netd root  45  1  628  264  c02588c0 afd0c0cc S /system/bin/debuggerd radio  46  1  4336  672  ffffffff afd0bdac S /system/bin/rild root  47  1  62224  27576 c00aef2c afd0b844 S zygote media  48  1  16828  3736  ffffffff afd0b6fc S /system/bin/mediaserver bluetooth 49  1  1216  572  c00aef2c afd0c59c S /system/bin/dbus-daemon root  50  1  776  316  c02a8424 afd0b45c S /system/bin/installd keystore  51  1  1704  432  c02588c0 afd0c0cc S /system/bin/keystore shell  52  1  696  336  c0050934 afd0c3ac S /system/bin/sh root  53  1  3356  160  ffffffff 00008294 S /sbin/adbd system  67  47  172464 32596 ffffffff afd0b6fc S system_server system  115  47  80028  20728 ffffffff afd0c51c S com.android.systemui app_24  124  47  80732  20720 ffffffff afd0c51c S com.android.inputmethod.latin radio  135  47  87848  20324 ffffffff afd0c51c S com.android.phone app_18  144  47  89136  24160 ffffffff afd0c51c S com.android.launcher app_7  165  47  86136  22736 ffffffff afd0c51c S android.process.acore app_0  197  47  73996  17472 ffffffff afd0c51c S com.android.deskclock app_14  208  47  75000  18464 ffffffff afd0c51c S android.process.media app_3  219  47  72228  17652 ffffffff afd0c51c S com.android.bluetooth app_25  234  47  85336  17836 ffffffff afd0c51c S com.android.mms app_26  254  47  74656  19080 ffffffff afd0c51c S com.android.email app_27  266  47  74912  18100 ffffffff afd0c51c S com.android.providers.calendar app_1  285  47  71616  16280 ffffffff afd0c51c S com.android.protips app_19  293  47  72184  16572 ffffffff afd0c51c S com.android.music app_21  301  47  74728  17208 ffffffff afd0c51c S com.android.quicksearchbox app_28  311  47  75408  18040 ffffffff afd0c51c S com.cooliris.media shell  323  52  856  316  00000000 afd0b45c R ps $ More than 30 processes (200+ threads).
Kernel Inter Process Communication
Abstraction of Inter Process Communication Binder AIDL Intent More abstract
Inter Process Communication of Android Intent The highest level abstraction Inter process method invocation AIDL: Android Interface Definition Language binder kernel driver ashmem shared memory
Intent (1) The highest level abstraction IPC in Android
Requests are queued and handled sequentially.
Powerful enough between applications
Implemented using inter process method invocation
Intent (2) Loosely coupling The sender need not choose the receiver
The sender can specify ”action”. Then proper receiver is chosen and handles it. VIEW + http://... -> Browser opens the url.
VIEW + geo:0,0?q=Tokyo -> Map app shows a map of Tokyo.
CALL + tel:01234567 -> Phone app dials the number.
Inter process method invocation used for system services
needs multi-thread programming
wrapped by AIDL to hide complexity
implemented using binder
Invoking method via interface In the same process
Inter-process invocation interface interface interface How?
Inter-process invocation Binder Thread interface interface interface
android.os.Parcel ” flatten” ” unflatten” transmit Delivering arguments of method
Describing in UML ... implements

More Related Content

PPTX
Overview of Android binder IPC implementation
Chethan Pchethan
 
PPTX
Android graphic system (SurfaceFlinger) : Design Pattern's perspective
Bin Chen
 
PDF
The Android graphics path, in depth
Chris Simmonds
 
PPT
Android booting sequece and setup and debugging
Utkarsh Mankad
 
PDF
Android Internals
Opersys inc.
 
PDF
Design and Concepts of Android Graphics
National Cheng Kung University
 
PDF
Low Level View of Android System Architecture
National Cheng Kung University
 
PPTX
Android Services
Ahsanul Karim
 
Overview of Android binder IPC implementation
Chethan Pchethan
 
Android graphic system (SurfaceFlinger) : Design Pattern's perspective
Bin Chen
 
The Android graphics path, in depth
Chris Simmonds
 
Android booting sequece and setup and debugging
Utkarsh Mankad
 
Android Internals
Opersys inc.
 
Design and Concepts of Android Graphics
National Cheng Kung University
 
Low Level View of Android System Architecture
National Cheng Kung University
 
Android Services
Ahsanul Karim
 

What's hot (20)

PPT
Android JNI
Siva Ramakrishna kv
 
PDF
Nodejs presentation
Arvind Devaraj
 
PPTX
Android Binder: Deep Dive
Zafar Shahid, PhD
 
PDF
Embedded Android : System Development - Part I
Emertxe Information Technologies Pvt Ltd
 
PDF
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Opersys inc.
 
PDF
Android ipm 20110409
Tetsuyuki Kobayashi
 
PPTX
Binder: Android IPC
Shaul Rosenzwieg
 
PPT
Learning AOSP - Android Booting Process
Nanik Tolaram
 
PDF
Understanding the Android System Server
Opersys inc.
 
PDF
BKK16-315 Graphics Stack Update
Linaro
 
PPT
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
Nanik Tolaram
 
PPT
Learning AOSP - Android Linux Device Driver
Nanik Tolaram
 
PDF
Android IPC Mechanism
National Cheng Kung University
 
PPTX
Android AIDL Concept
Charile Tsai
 
PDF
Android Security Internals
Opersys inc.
 
PDF
Android Programming Basics
Eueung Mulyana
 
PPTX
Android+init+process
Hong Jae Kwon
 
PDF
Android Binder IPC for Linux
Yu-Hsin Hung
 
PDF
Introduction to Android Window System
National Cheng Kung University
 
PDF
Embedded Android Workshop with Pie
Opersys inc.
 
Android JNI
Siva Ramakrishna kv
 
Nodejs presentation
Arvind Devaraj
 
Android Binder: Deep Dive
Zafar Shahid, PhD
 
Embedded Android : System Development - Part I
Emertxe Information Technologies Pvt Ltd
 
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Opersys inc.
 
Android ipm 20110409
Tetsuyuki Kobayashi
 
Binder: Android IPC
Shaul Rosenzwieg
 
Learning AOSP - Android Booting Process
Nanik Tolaram
 
Understanding the Android System Server
Opersys inc.
 
BKK16-315 Graphics Stack Update
Linaro
 
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
Nanik Tolaram
 
Learning AOSP - Android Linux Device Driver
Nanik Tolaram
 
Android IPC Mechanism
National Cheng Kung University
 
Android AIDL Concept
Charile Tsai
 
Android Security Internals
Opersys inc.
 
Android Programming Basics
Eueung Mulyana
 
Android+init+process
Hong Jae Kwon
 
Android Binder IPC for Linux
Yu-Hsin Hung
 
Introduction to Android Window System
National Cheng Kung University
 
Embedded Android Workshop with Pie
Opersys inc.
 
Ad

Viewers also liked (20)

PDF
Android binder-ipc
magoroku Yamamoto
 
PDF
Binderのはじめの一歩とAndroid
l_b__
 
PDF
Android起動周りのノウハウ
chancelab
 
PDF
Etsy - Android & Design
Deniz Veli
 
PDF
Advanced Android Design Implementation
Tack Mobile
 
PDF
June 2014 - IPC in android
BlrDroid
 
PDF
Binderのはじめの一歩
l_b__
 
PDF
Android local sockets in native code
ramalinga prasad tadepalli
 
PDF
AIDL - Android Interface Definition Language
Arvind Devaraj
 
PPTX
Inter Process Communication-R.D.Sivakumar
Sivakumar R D .
 
PPTX
Permission use analysis for vetting undesirable behavior in
chaitrabhat777
 
PPTX
Java & The Android Stack: A Security Analysis
Pragati Rai
 
PPTX
Intents and PendingIntents in Android application development
MaryadelMar85
 
PPTX
Understanding open max il
Chethan Pchethan
 
PDF
Android Material Design APIs/Tips
Ken Yee
 
PDF
Android Crash analysis and The Dalvik Garbage collector – Tools and Tips
DroidConTLV
 
PPTX
Desgn&imp authentctn.ppt by Jaseela
Student
 
PPTX
Inter process communication
Pradeep Kumar TS
 
PDF
Manipulating Android tasks and back stack
Ran Nachmany
 
PDF
Inter process communication using Linux System Calls
jyoti9vssut
 
Android binder-ipc
magoroku Yamamoto
 
Binderのはじめの一歩とAndroid
l_b__
 
Android起動周りのノウハウ
chancelab
 
Etsy - Android & Design
Deniz Veli
 
Advanced Android Design Implementation
Tack Mobile
 
June 2014 - IPC in android
BlrDroid
 
Binderのはじめの一歩
l_b__
 
Android local sockets in native code
ramalinga prasad tadepalli
 
AIDL - Android Interface Definition Language
Arvind Devaraj
 
Inter Process Communication-R.D.Sivakumar
Sivakumar R D .
 
Permission use analysis for vetting undesirable behavior in
chaitrabhat777
 
Java & The Android Stack: A Security Analysis
Pragati Rai
 
Intents and PendingIntents in Android application development
MaryadelMar85
 
Understanding open max il
Chethan Pchethan
 
Android Material Design APIs/Tips
Ken Yee
 
Android Crash analysis and The Dalvik Garbage collector – Tools and Tips
DroidConTLV
 
Desgn&imp authentctn.ppt by Jaseela
Student
 
Inter process communication
Pradeep Kumar TS
 
Manipulating Android tasks and back stack
Ran Nachmany
 
Inter process communication using Linux System Calls
jyoti9vssut
 
Ad

Similar to Inter-process communication of Android (20)

PDF
Embedded Android
晓东 杜
 
PDF
[2007 CodeEngn Conference 01] dual5651 - Windows 커널단의 후킹
Code Engn
 
ODP
Android crash debugging
Ashish Agrawal
 
PDF
Android Development Tools
Dominik Helleberg
 
PPT
Android Radio Layer Interface
Chun-Yu Wang
 
PDF
Android Things in action
Stefano Sanna
 
PPTX
Optimizing Apps for Better Performance
Elif Boncuk
 
PDF
Vulnerable Out of the Box: An Evaluation of Android Carrier Devices
Priyanka Aash
 
PDF
Vinod report es 1
Govt. Engg. Collage Ajmer
 
DOCX
Vinod report es 1
Govt. Engg. Collage Ajmer
 
PDF
Stability issues of user space
晓东 杜
 
PDF
Android Development Tools
Dominik Helleberg
 
PDF
IRJET - Mirroring of Source and Sink Devices in Android Screen Casting
IRJET Journal
 
PDF
Android Embedded - Smart Hubs als Schaltzentrale des IoT
inovex GmbH
 
PDF
Explore Android Internals
National Cheng Kung University
 
PDF
Android 4.2 Internals - Bluetooth and Network
Caio Pereira
 
PPTX
Android Programming made easy
Lars Vogel
 
PDF
Android 5.0 Lollipop platform change investigation report
hidenorly
 
PPTX
Eclipse Edje: A Java API for Microcontrollers
MicroEJ
 
PPTX
Manish Chasta - Securing Android Applications
Positive Hack Days
 
Embedded Android
晓东 杜
 
[2007 CodeEngn Conference 01] dual5651 - Windows 커널단의 후킹
Code Engn
 
Android crash debugging
Ashish Agrawal
 
Android Development Tools
Dominik Helleberg
 
Android Radio Layer Interface
Chun-Yu Wang
 
Android Things in action
Stefano Sanna
 
Optimizing Apps for Better Performance
Elif Boncuk
 
Vulnerable Out of the Box: An Evaluation of Android Carrier Devices
Priyanka Aash
 
Vinod report es 1
Govt. Engg. Collage Ajmer
 
Vinod report es 1
Govt. Engg. Collage Ajmer
 
Stability issues of user space
晓东 杜
 
Android Development Tools
Dominik Helleberg
 
IRJET - Mirroring of Source and Sink Devices in Android Screen Casting
IRJET Journal
 
Android Embedded - Smart Hubs als Schaltzentrale des IoT
inovex GmbH
 
Explore Android Internals
National Cheng Kung University
 
Android 4.2 Internals - Bluetooth and Network
Caio Pereira
 
Android Programming made easy
Lars Vogel
 
Android 5.0 Lollipop platform change investigation report
hidenorly
 
Eclipse Edje: A Java API for Microcontrollers
MicroEJ
 
Manish Chasta - Securing Android Applications
Positive Hack Days
 

More from Tetsuyuki Kobayashi (20)

PDF
some topic of ffmpeg
Tetsuyuki Kobayashi
 
PDF
New VIdeo CODEC AV1
Tetsuyuki Kobayashi
 
PDF
Try new transport protocol SRT (ver. 2)
Tetsuyuki Kobayashi
 
PDF
Try new transport protocol SRT
Tetsuyuki Kobayashi
 
PDF
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Tetsuyuki Kobayashi
 
PDF
WebOS Open Source Edition を試してみた
Tetsuyuki Kobayashi
 
PDF
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Tetsuyuki Kobayashi
 
PDF
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
 
PDF
組み込みLinuxでのGolangのススメ
Tetsuyuki Kobayashi
 
PDF
Tricky implementation of Go ARM soft float
Tetsuyuki Kobayashi
 
PDF
ARM 64bit has come!
Tetsuyuki Kobayashi
 
PDF
Virtual memory 20070222-en
Tetsuyuki Kobayashi
 
PDF
Simple and efficient way to get the last log using MMAP
Tetsuyuki Kobayashi
 
PDF
Tips of Malloc & Free
Tetsuyuki Kobayashi
 
PDF
Basic of virtual memory of Linux
Tetsuyuki Kobayashi
 
PDF
Patch101
Tetsuyuki Kobayashi
 
PDF
ADB(Android Debug Bridge): How it works?
Tetsuyuki Kobayashi
 
PDF
Tweaking Google TV emulator
Tetsuyuki Kobayashi
 
PDF
Android is NOT just 'Java on Linux'
Tetsuyuki Kobayashi
 
PDF
Init of Android
Tetsuyuki Kobayashi
 
some topic of ffmpeg
Tetsuyuki Kobayashi
 
New VIdeo CODEC AV1
Tetsuyuki Kobayashi
 
Try new transport protocol SRT (ver. 2)
Tetsuyuki Kobayashi
 
Try new transport protocol SRT
Tetsuyuki Kobayashi
 
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Tetsuyuki Kobayashi
 
WebOS Open Source Edition を試してみた
Tetsuyuki Kobayashi
 
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Tetsuyuki Kobayashi
 
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
 
組み込みLinuxでのGolangのススメ
Tetsuyuki Kobayashi
 
Tricky implementation of Go ARM soft float
Tetsuyuki Kobayashi
 
ARM 64bit has come!
Tetsuyuki Kobayashi
 
Virtual memory 20070222-en
Tetsuyuki Kobayashi
 
Simple and efficient way to get the last log using MMAP
Tetsuyuki Kobayashi
 
Tips of Malloc & Free
Tetsuyuki Kobayashi
 
Basic of virtual memory of Linux
Tetsuyuki Kobayashi
 
ADB(Android Debug Bridge): How it works?
Tetsuyuki Kobayashi
 
Tweaking Google TV emulator
Tetsuyuki Kobayashi
 
Android is NOT just 'Java on Linux'
Tetsuyuki Kobayashi
 
Init of Android
Tetsuyuki Kobayashi
 

Recently uploaded (20)

PDF
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
Doc9.....................................
SofiaCollazos
 
PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPT
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira Júnior
 
PDF
Chapter 1 Introduction to CV and IP Lecture Note.pdf
Getnet Tigabie Askale -(GM)
 
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Doc9.....................................
SofiaCollazos
 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
DevOps & Developer Experience Summer BBQ
AUGNYC
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira Júnior
 
Chapter 1 Introduction to CV and IP Lecture Note.pdf
Getnet Tigabie Askale -(GM)
 

Inter-process communication of Android