reference other blog,
SystemServer.java::main:
a.load android_servers library
b.call init1-->system_init.cpp::system_init
system_init.cpp::system_init
a.start SurfaceFlinger
[b.start AudioFlinger,MediaPlayerService,CameraService]
c.AndroidRuntime->callStatic("com/android/server/SystemServer", "init2");
d.ProcessState::self()->startThreadPool();
e.IPCThreadState::self()->joinThreadPool();
SystemServer.java::init2 start ServerThread:
a.Starting Power Manager
b.Starting Activity Manager. ActivityManagerService.main(factoryTest)
c.Starting telephony registry
d.Starting Package Manager PackageManagerService.main
e.ActivityManagerService.setSystemProcess():add activity,meminfo,cpuinfo,activity.broast,activity.service,activity.senders,activity.providers,permission services
f.Starting Content Manager ContentService.main
g.Starting System Content Providers
h.Starting Battery Service
i.Starting Hardware Service
j.nitialize the power service
k.Starting Alarm Manager
l.Starting Led Manager
m.Starting Sensor Service
n.Starting Window Manager
o.Bluetooth Servic
p.Starting Status Bar Service
q.Starting Clipboard Service
r.Starting Input Method Service
s.Starting NetStat Service
t.Starting Connectivity Service
u.Starting Notification Manager
v.Starting Mount Service
w.Starting DeviceStorageMonitor service
x.Starting Location Manager
z.Starting Search Service
Starting Checkin Service
Starting Wallpaper Service
Starting Audio Service
Starting AppWidget Service
本文详细介绍了Android系统启动过程中的关键步骤和服务初始化流程,包括SystemServer的启动、核心服务如ActivityManagerService和PackageManagerService的初始化等。
3062

被折叠的 条评论
为什么被折叠?



