深入剖析Android中init进程实现的C语言源码

2020-01-06 13:38:30丽君

例如红米Note手机的属性值如下:

 

 
  1. [ro.product.device]: [lcsh92_wet_jb9]  [ro.product.locale.language]: [zh] 
  2. [ro.product.locale.region]: [CN]  [ro.product.manufacturer]: [Xiaomi] 

在system/core/init/init.c文件的main函数中,跟属性服务的相关代码如下:

 

 
  1. property_init();  queue_builtin_action(property_service_init_action, "property_service_init"); 

接下来,我们分别看一下这两处代码的具体实现。

属性服务初始化 创建存储空间

首先,我们先来看一下property_init函数的源码(/system/core/init/property_service.c):

 

 
  1. void property_init(void)  { 
  2. init_property_area();  }