当前位置: 代码迷 >> Android >> android5.系统init.rc怎么启动zygote
  详细解决方案

android5.系统init.rc怎么启动zygote

热度:251   发布时间:2016-04-27 23:04:15.0
android5.*系统init.rc如何启动zygote
    最近开始学习init启动过程,网上大部分资料都是4.*的.
    在4.*中init.rc文件中有on boot部分,在该部分有class_start main这样的命令,这样在init.c的main中就可以添加到action_queue中以便后面执行do_class_start函数,最终创建app_process.
   但是在5.*系统中,init.c的main函数中并没有将包含class_start main的on动作添加到action_queue中,那么5.*中到底是如何启动zygote的呢?(5.*中的on boot中并没有class_start main只有class_start core)
    向大家请教,谢谢!
------解决思路----------------------
会有类似的条件在init.rc里面:
on fs
    mount_all /fstab.conf

mount_all里面会触发nonencrypted的action
on nonencrypted
     class_start main
     class_start late_start

------解决思路----------------------

on nonencrypted
    class_start main
    class_start late_start

.....

on property:vold.decrypt=trigger_restart_min_framework
    class_start main

on property:vold.decrypt=trigger_restart_framework
    class_start main
    class_start late_start


mount_all 中会根据具体的文件系统加密情况触发上面的action或者trigger
  相关解决方案