什么是system_process
system_process是我们在应用程序列表可以看到的名称。
system_process不是进程的名称 (对于一般Android程序来说会被设置成包名)
system_process的进程名称是system_server
system_server进程是zygote进程孵化的第一个Java进程
service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server
class main
user root
system_process进程的代码SystemServer
/* Hardcoded command line to start the system server */
String args[] = {
"--setuid=1000",
"--setgid=1000",
"--setgroups=1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1018,1021,1023,"
+ "1024,1032,1065,3001,3002,3003,3006,3007,3009,3010",
"--capabilities=" + capabilities + "," + capabilities,
"--nice-name=system_server",
"--runtime-args",
"--target-sdk-version=" + VMRuntime.SDK_VERSION_CUR_DEVELOPMENT,
"com.android.server.SystemServer",
};
args中,有:--nice-name=system_server,这就是进程名system_server的由来