Android系统的启动

一、Android系统启动了哪些服务进程?

  系统首页启动系统第一个进程Init进程,init进程加载init.rc文件。在init.rc文件在需要启动的服务进程配置,其中包括:

    • Zygote进程:/system/bin/app_progress ...
    • servicemanager:/system/bin/servicemanager ...
    • surfaceflinger:/system/bin/surfaceflinger ...
    • ……

 二、Zygote进程怎么启动

  • 启动Android虚拟机。
  • 注册JNI函数。
  • 预加载系统资源。
  • 启动SystemServer服务进程。
  • 启动Socket Loop,等待Socket消息。

PS:详细请查看Zygote进阶

三、SystemServer做哪些事?

 

  • 启动Binder机制,即创建线程池。
  • 启动系统服务,启动系统服务是SystemServer与Binder线程池合作启动的。
    • ActivityManagerService。
    • WindowManagerService。
    • PowerManagerService。
    • PackageManagerService。
    • ……
  • 启动Socket Loop。

四、启动桌面Launcer App

 

PS:参数过这篇博客:http://gityuan.com/2016/02/14/android-system-server/

 

posted @ 2021-09-04 11:58  naray  阅读(33)  评论(0编辑  收藏  举报