Process/File View of the Android Camera Subsystem

Source: Internet
Author: User

This article examines the Android Camera subsystem from the process/file perspective based on Android 4.2.2.

The overall architecture of the AndroidCamera subsystem is divided into two parts: Client and Server. They are built on the basis of the Android inter-process communication mechanism Binder.


WP

U0_a142126 2119 162156 31244 c0042004 4007d108 S Compiler

U0_a142127 2119 162156 31244 c0042004 4007d108 S ReferenceQueueD

U0_a142128 2119 162156 31244 c0042004 4007d108 S FinalizerDaemon

U0_a142129 2119 162156 31244 c0042004 4007d108 S FinalizerWatchd

U0_a142130 2119 162156 31244 c02b2ffc 4007bfe8 S Binder_1

U0_a142131 2119 162156 31244 c02b2ffc 4007bfe8 S Binder_2

U0_a142134 2119 162156 31244 c0042004 4007d108 S pool-1-thread-1

U0_a142136 2119 162156 31244 c00a5004 4007cee4 S CameraHolder

U0_a142152 2119 162156 31244 c02b2ffc 4007bfe8 S Binder_3

U0_a142375 2119 162156 31244 c0042004 4007d108 S SoundPool

U0_a142376 2119 162156 31244 c0042004 4007d108 S SoundPoolThread

U0_a142377 2119 162156 31244 c0042004 4007d108 S Thread-123

List binder services

Root @ android:/# service list

63media. audio_policy: [android. media. IAudioPolicyService]

64media. camera: [android. hardware. ICameraService]

65media. player: [android. media. IMediaPlayerService]

66media. audio_flinger: [android. media. IAudioFlinger]

View virtual address space of a process

Media 1012 1 37484 8740 ffffffff 4016bfe8 S/system/bin/mediaserver

Root @ android:/# cat/proc/1012/maps

401f7000-40215000r-xp 00000000 637/system/lib/libbinder. so

40215000-4021a000r -- p 0001d000 637/system/lib/libbinder. so

4021a000-4021b000rw-p 00022000 00:11 637/system/lib/libbinder. so

4025a000-4025b000r-xp 00000000 524/system/lib/libhardware. so

4025b000-4025c000r -- p 00000000 524/system/lib/libhardware. so

4025c000-4025d000rw-p 00001000 00:11 524/system/lib/libhardware. so

40451000-40467000r-xp 00000000 585/system/lib/libcamera_client.so

40467000-40468000 --- p 00000000 0

40468000-4046d000r -- p 00016000 585/system/lib/libcamera_client.so

4046d000-4046e000rw-p 0001b000 585/system/lib/libcamera_client.so

40581000-40586000r-xp 00000000 636/system/lib/libhardware_legacy.so

40586000-40587000r -- p 00004000 636/system/lib/libhardware_legacy.so

40587000-40588000rw-p 00005000 00:11 636/system/lib/libhardware_legacy.so

4059c000-405d4000r-xp 00000000 655/system/lib/libcameraservice. so

405d4000-405d8000r -- p 00037000 655/system/lib/libcameraservice. so

405d8000-405d9000rw-p 0003b000 655/system/lib/libcameraservice. so

405d9000-405dc000r-xp 00000000 582/system/lib/libcamera_metadata.so

405dc000-405dd000r -- p 00002000 582/system/lib/libcamera_metadata.so

405dd000-405de000rw-p 00003000 00:11 582/system/lib/libcamera_metadata.so

40b12000-40b1f000r-xp 00000000 569/system/lib/hw/camera. sama5d3-ek.so

40b1f000-40b20000r -- p rjc000 00:11 569/system/lib/hw/camera. sama5d3-ek.so

40b20000-40b21000rw-p g0d000 569/system/lib/hw/camera. sama5d3-ek.so

41eb5000-41eb7000r-xp 00000000 565/system/lib/hw/gralloc. sama5d3-ek.so

41eb7000-41eb8000r -- p 00001000 565/system/lib/hw/gralloc. sama5d3-ek.so

41eb8000-41eb9000rw-p 00002000 565/system/lib/hw/gralloc. sama5d3-ek.so

420000000-000026000rw-s 3f200000: 0b 554/dev/video1

U0_a142119 1010 162156 31244 ffffffff 4007cee4 S com. android. camera

Root @ android:/# cat/proc/2119/maps

40130000-4014e000r-xp 00000000 637/system/lib/libbinder. so

4014e000-40153000r -- p 0001d000 637/system/lib/libbinder. so

40153000-40154000rw-p 00022000 00:11 637/system/lib/libbinder. so

40154000-401e5000r-xp 00000000 598/system/lib/libandroid_runtime.so

401e5000-401e6000 --- p 00000000 00: 00 0

401e6000-401ea000r -- p 00091000 598/system/lib/libandroid_runtime.so

401ea000-401fw.rw-p 00095000 598/system/lib/libandroid_runtime.so

404e9000-404ff000r-xp 00000000 585/system/lib/libcamera_client.so

404ff000-40500000 --- p 00000000 0

40500000-40505000r -- p 00016000 585/system/lib/libcamera_client.so

40505000-40506000rw-p 0001b000 00:11 585/system/lib/libcamera_client.so

44cfe000-44cff000r -- s 003c4000 160/system/framework. jar

44cff000-456f2000r -- p 00000000 107/data/dalvik-cache/system @ framework@framework.jar @ classes. dex

456f2000-457b3000rw-p 00000000 1203/dev/ashmem/dalvik-aux-structure (deleted)

4939a000-493a2000r -- s 0010c000 00:11 195/system/app/LegacyCamera.apk

493a2000-493ef000r -- s 000bc000 195/system/app/LegacyCamera.apk

493ef000-493f7000r -- s 0010c000 00:11 195/system/app/LegacyCamera.apk

493f7000-49447000r -- p 00000000 485/data/dalvik-cache/system@app@LegacyCamera.apk @ classes. dex

49447000-49451_rw-p 00000000 3819/dev/ashmem/dalvik-aux-structure (deleted)


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.