1/* 2** 3** Copyright 2008, The Android Open Source Project 4** 5** Licensed under the Apache License, Version 2.0 (the "License"); 6** you may not use this file except in compliance with the License. 7** You may obtain a copy of the License at 8** 9** http://www.apache.org/licenses/LICENSE-2.0 10** 11** Unless required by applicable law or agreed to in writing, software 12** distributed under the License is distributed on an "AS IS" BASIS, 13** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14** See the License for the specific language governing permissions and 15** limitations under the License. 16*/ 17 18// System headers required for setgroups, etc. 19#include <sys/types.h> 20#include <unistd.h> 21#include <grp.h> 22 23#include <binder/IPCThreadState.h> 24#include <binder/ProcessState.h> 25#include <binder/IServiceManager.h> 26#include <utils/Log.h> 27 28#include <AudioFlinger.h> 29#include <CameraService.h> 30#include <MediaPlayerService.h> 31#include <AudioPolicyService.h> 32#include <private/android_filesystem_config.h> 33 34using namespace android; 35 36int main(int argc, char** argv) 37{ 38 sp<ProcessState> proc(ProcessState::self()); 39 sp<IServiceManager> sm = defaultServiceManager(); 40 LOGI("ServiceManager: %p", sm.get()); 41 AudioFlinger::instantiate(); 42 MediaPlayerService::instantiate(); 43 CameraService::instantiate(); 44 AudioPolicyService::instantiate(); 45 ProcessState::self()->startThreadPool(); 46 IPCThreadState::self()->joinThreadPool(); 47} 48