Android的初始化语言脚本init.rc解析_第1页
Android的初始化语言脚本init.rc解析_第2页
Android的初始化语言脚本init.rc解析_第3页
Android的初始化语言脚本init.rc解析_第4页
Android的初始化语言脚本init.rc解析_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Android的初始化语言脚本init.rc分析Android init.RC (androidinitlanguage )Android初始化语言包括四个类声明:行为类(Actions )、命令类(Commands )、服务类(Services )和可选类(Options )*初始化语言是以行为单位,由空格分隔的语言符号组成。 c样式的反斜杠转义字符可用于在语言符号中插入空格。 双引号也可以用于防止文本在空格中分割成多个语言符号。 如果反斜线位于行的末尾,则用作换行。*行以#开始(也可以前面加空格)。* Actions和Services隐式声明新段落。 所有段落下的Commands或Options声明都属于该段落。 第一段前面的Commands或Options被忽略。* Actions和Services具有唯一的名称。 如果在它们之后声明同名的类,则会被视为错误并忽略。Actions-Actions是一系列命令的名称。 Actions包含确定action何时运行的触发器。 如果在满足触发条件的情况下运行了action,但尚未将其添加到等待运行队列中,则将其添加到队列的末尾。队列中的action按顺序执行,action中的命令也按顺序执行。 Init在执行命令的过程中处理其他活动(设备创建/销毁、属性设置、进程重新启动)。Actions的表现如下打开服务,服务-Services由init启动,并在退出时重新启动(可选)。 服务的表现形式是:服务 *是.Options公司-Options是Services的限定,会影响init何时、如何运行service重要的事情这是设备的重要服务。 如果4分钟内退出4次以上,设备将重新启动,进入恢复模式。禁止使用。此服务的级别不会自动启动,所以必须在服务名称指定的级别上开始。setenv设置开始进程的环境变量的值插座 创建名为/dev/socket/的UNIX域套接字,并将软盘转发到启动的进程。 必须是dgram或stream。 用户和组默认为0。用户(用户)在执行服务之前更改用户名。 当前默认为root。 如果进程需要linux能力,则此命令不可用。 根时要求能力,必须降低到必要的uidgroup *在执行服务之前更改组。 第一个组之后的组被设定为“设置组()”。 目前,默认为root一击服务结束后不重新启动。类别指定服务的类别名称. 同一类名的所有服务都可以一起开始或停止。 未指定类的服务的默认为“默认”类。启动器在服务重新开始时执行命令.Triggers-Triggers (触发器)是一个字符串,可以用于匹配特定类型的事件并执行action。boot这是在init启动后执行的第一个触发器(加载/init.conf时)=在property设置为指定值时启动。device-added-device-removed-在添加或删除设备节点时启动。服务-已执行-在指定的服务存在时启动Commands公司-exec *Fork运行程序().这将被阻止直到程序运行。 请避免执行嵌入式指令以外的程序。 启动可能会被阻止。导出设置全局环境变量的值,执行此命令后,可以获取所有进程。国际货币基金组织把网络接口设置为在线。导入程序分析init配置文件并扩展当前配置文件。hostname主机名的设置chmod更改文件访问权限chown变更文件的所属和组class_start如果指定类别的服务没有运行,则启动该类别的所有服务。class_stop如果指定类别的服务正在运行,请停止该类别的所有服务。域名称。设置域名。insmod加载路径的模块。mkdir 模式 所有者 组要创建目录,如果不指定选项:mod,owner,group .则以755权限创建目录,owner以root创建,组以root创建。mount *试图装载到目录中. 可以以mtdname格式为mtd块设备命名。 包括ro、rw、remount、noatimesetkey公司暂时没有了。setprop设定系统property的值setrrlimit设置资源的限制start开始未执行的服务。停止停止正在执行的服务。symlink创建指向符号的链接sysclktz设置系统的时区(GMT为0 )trigger系列引起事件。 用于调用其他动作。write *打开打开的文件并写入一个或多个字符串。属性(属性)。-Init更新几个系统属性,确认在做什么。init.action当前正在执行的action,如果不存在,则为“”mand已执行的命令如果没有执行,则为“”init.svc名为的服务的状态(“停止”、“运行”、“重新启动”)init.rc示例:-# not complete- justprovidingsomeonexamplesofusage#开机启动导出路径/sbin : /系统/sbin : /系统/bin导出LD _ library _ path/system/libmkdir /devmkdir /procmkdir /sys安装tmpfstmpfs/devmkdir /dev/ptsmkdir /dev/socketmount devpts devpts /dev/ptsmount proc proc /procmount sysfs sysfs /sys写入/proc/CPU /定位4ifup lo主机名称局部主计算机。域名本地主机。的.mount yaffs2 mtdsystem /systemmount yaffs2 mtduserdata /data导入/系统/etc/init.confclass_start defaultservice adbd /sbin/adbd用户ADB群组ADB服务usbd /系统/bin/usbd-ruser usbdusbd组套接字usbd 666servicezygoote/system/bin/app _ process-xzygoote/system/bin- zygo ote插座zygote666服务时间/系统/bin /运行时间用户系统(用户系统)。group system公司on device-added-/dev/compass开始akmdon device-removed-/dev/compass停止akmd服务akmd/sbin/akmd禁止使用。user akmd组akmd除错-缺省情况下,由init执行的程序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论