init.rc中文件里会通过import /init.${ro.hardware}.rc文件,这个ro.hardware应该是某个详细的属性。而这个ro.hardware赋值应该是在Init进程中赋值的。
这个ro.hardware值设置是在/system/core/init.c中实现的,其通过hardware来赋值。hardware首先被/proc/cpuinfo赋值。然后会检測comandline。
假设comandline中有參数为androidboot.hardware,那这个參数在init进程的解析中会用到,并会赋值给hardware。
也就是说假设cmdline中有androidboot.hardware。则ro.hardware的值就是这个值,假设没有则ro.hardware的值就是/proc/cpuinfo
比如我參与的这个项目comandline中的androidboot.hardware = qilianp1,那么在init.rc中import的详细文件相应为,init.qilianp1.rc