M之前版本在一個進程中創建media相關所有服務
av/media/mediaserver/main_mediaserver.cpp
sp<IServiceManager> sm = defaultServiceManager(); ALOGI("ServiceManager: %p", sm.get()); AudioFlinger::instantiate(); MediaPlayerService::instantiate(); ResourceManagerService::instantiate(); CameraService::instantiate(); AudioPolicyService::instantiate(); SoundTriggerHwService::instantiate(); RadioService::instantiate(); registerExtensions(); ProcessState::self()->startThreadPool(); IPCThreadState::self()->joinThreadPool();
N版本將各個服務轉移到不同進程中進行創建
media/audioserver/main_audioserver.cpp: AudioPolicyService::instantiate(); camera/cameraserver/main_cameraserver.cpp: CameraService::instantiate(); media/mediaserver/main_mediaserver.cpp: MediaPlayerService::instantiate();