本文使用AIL(Android Init Language)解释了Android初始化文件servicemanager.rc语句作用
本文源码基于Android Pie(9.0)
【此文件源码位置】
# 定义服务名为servicemanager,路径为/system/bin/servicemanagerservice servicemanager /system/bin/servicemanager# 为service设定类别为core、animationclass core animation# 执行此服务前切换为system用户user system# 执行此服务前切换组名为system、readprocgroup system readproc# 表示这是一个关键设备服务.如果4分钟内此服务退出4次以上,那么这个设备将重启进入recovery模式critical# onrestart 当服务重启时执行该命令# restart 重启制定服务,但不会禁用该服务# 下面代码表示,在重启servicemanager时也要重启以下的众多服务onrestart restart healthdonrestart restart zygoteonrestart restart audioserveronrestart restart mediaonrestart restart surfaceflingeronrestart restart inputflingeronrestart restart drmonrestart restart cameraserveronrestart restart keystoreonrestart restart gatekeeperd# 当fork进程时将子进程的pid写到/dev/cpuset/system-background/taskswritepid /dev/cpuset/system-background/tasks# 当shutdown超时时,此服务会被杀死;当shutdown启动时,如此服务未启动,则启动。shutdown critical
【AIL语法介绍源码位置】