android insmod命令,android的启动脚本(init.rc)文件的语法

android的启动脚本(init.rc)文件的语法,参考资料:

Android 初始化语言(Android Init Language)

Android初始化脚本语言包含四种类型的语句:

动作(Actions)

指令(Commands)

服务(Services)

选项(Options)

该语言的语法包括下列约定:

所有类型的语句都是基于行(line-oriented)的,

一个语句包含若干个tokens,token之间通过空格字符分隔.

如果一个token中需要包含空格字符,则需要通过C语言风格的反斜线('\')来转义,或者使用双引号把整个token引起来。反斜线还可以出现在一行

的末尾,表示下一行的内容仍然属于当前语句。

以'#'开始的行是注释行。

动作(Actions)和服务(Services)语句隐含表示一个新的段落

(section)的开始。

所有的指令(commands)和选项(options)归属于上方最近的一个段落。在第一个段落之前的指令(commands)和选项

(options)是无效的。

动作(Actions)和服务(Services)拥有唯一性的名字。如果出现重

名,那么后出现的定义将被作为错误忽略掉。动作

(Actions)

动作(Actions)是一个有名字的指令(commands)序列。每个动作

(Actions)都定义一个触发条件(trigger),用于指示什么时候执行这个动作。当与动作的触发器匹配的事件发生时,该动作将被添加到一个即将

被执行的队列的队尾(除非它已经在队列中)。

队列中的每一个动作被依次取出执行,动作中的每一个指令也将依次执行。初始化程序

(Init)在执行一个动作的各项指令的期间,还需要处理其它操作(比如,设备创建/销毁,属性设置,进程重启)。

一个动作定义的形式如下:on

服务(Services)服务是初始化程序需要启动的一些程序,初始化程序还有可能会在这些程序退出之后重启它们。

Services take 一个服务定义的形式如下:service [ ]*

...

选项(Options)

选项将影响控制初始化程序运行服务的时机和方法。可能的选项如下表。

选项

说明

disabled

This service will not automatically

start with its class. It must be explicitly started by name.

socket[ [ ]

]

Create a unix domain socket named /dev/socket/

and pass its fd to the launched process. Valid

values include dgram and stream. user

and group default to 0.

user

Change to username before exec'ing

this service. Currently defaults to root.

group [

]*

Change to groupname before exec'ing

this service.  Additional  groupnames beyond the first, which is

required, are used to set additional groups of the process (with setgroups()).

Currently defaults to root.

capability [ ]+

Set linux capability before exec'ing

this service

oneshot

Do not restart the service when it

exits.

class

Specify a class name for the service.

All services in a named class must start and stop together. A service

is considered of class "default" if one is not specified via the class

option.

触发器(Triggers)

触发器是一个字符串,用于匹配特定的事件,这些事件将触发触发器所属动作

(Actions)的执行。

触发器

说明

boot

This is the first trigger that occurs

when init starts (after /init.conf is loaded).

=

Triggers of this form occur when the

property is set to the specific value .

device-added-device-removed-

Triggers of these forms occur when a

device node is added or removed.

service-exited-

Triggers of this form occur when the

specified service exits.

指令(Commands)

Command

Description

exec [

]*

Fork and execute a program ().

This will block until the program completes execution. Try to avoid

exec. Unlike the builtin commands, it runs the risk of

getting init "stuck".

export

Set the environment variable

equal to in the global environment (which

will be inherited by all processes started after this command is

executed).

ifup

Bring the network interface

online.

import

Parse an init config file, extending

the current configuration.

hostname

Set the host name.

class_start

Start all services of the specified

class if they are not already running.

class_stop

Stop all services of the specified

class if they are currently running.

domainname

Set the domain name.

insmod

Install the module at .

mkdir

Make a directory at .

mount [ ]*

Attempt to mount the named device at

the directory . This

may be of the form mtd@name to specify a mtd block device by name.

setkey

- currenlty undefined -

setprop

Set system property

to .

setrlimit

Set the rlimit for a resource.

start

Start a service running if it is not

already running.

stop

Stop a service from running if it is

currently running.

symlink

Create a symbolic link at

with the value .

write [ ]*

Open the file at

and write one or more strings to it with write(2).

属性(Properties)初始化程序(Init)可以根据需要修改一些系统的属性。

属性

说明

init.action

Equal to the name of the action

currently being executed or "" if none.

init.command

Equal to the command being executed or

"" if none.

init.svc.

State of a named service ("stopped",

"running", or "restarting").

init.rc文件示例on boot

export PATH /sbin:/system/sbin:/system/bin

export LD_LIBRARY_PATH /system/lib

mkdir /dev

mkdir /proc

mkdir /sys

mount tmpfs tmpfs /dev

mkdir /dev/pts

mkdir /dev/socket

mount devpts devpts /dev/pts

mount proc proc /proc

mount sysfs sysfs /sys

write /proc/cpu/alignment 4

ifup lo

hostname localhost

domainname localhost

mount yaffs2 mtd@system /system

mount yaffs2 mtd@userdata /data

import /system/etc/init.conf

class_start default

service adbd /sbin/adbd

user adb

group adb

service usbd /system/bin/usbd -r

user usbd

group usbd

socket usbd 666

service zygote /system/bin/app_process -Xzygote /system/bin --zygote

socket zygote 666

service runtime /system/bin/runtime

user system

group system

on device-added-/dev/compass

start akmd

on device-removed-/dev/compass

stop akmd

service akmd /sbin/akmd

disabled

user akmd

group akmd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/532978.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android digest 认证,探究 Android 签名机制和原理

背景最近在调研一个测试工具的使用,在使用中发现被测试工具处理过的apk文件经安装后打开就会崩溃,分析崩溃日志后原因是签名不一致导致的。说到Android中的签名,可能大家都知道签名的目的就是为了保护apk文件的安全,如果apk被恶意…

html图片拼接出现留白,关于img标签周围留白的问题

在进行页面的DIV CSS排版时,遇到IE6浏览器中的图片元素img下出现多余空白的问题绝对是常见的,对于该问题的解决方法也是“见机行事”。1、将图片转换为块级对象即,设置img为“display:block;”。在本例中添加一组CSS代码:“#sub i…

html5中的行高元素,详解HTML元素的height、offsetHeight、clientHeight、scrollTop等梳理

关于元素的一些属性在前端的日常开发中,我们经常无可避免的需要获取或者监听一些页面的属性,那么我们需要经常了解一些属性代表的含义才能更好地使用这些属性。特别是一下这些:尺寸相关:offsetHeight、clientHeight、scrollHeight…

pm2 start 带参数_3款有海景天窗的国产SUV,最适合带女朋友看星星,首付3万拿下...

夏天就这么缓缓地来了,在某一个周末的晚上,约上心爱的女朋友,开上车子,一路上驰骋在无人的大桥上,放上音乐,开到目的地,打开天窗,看看星星,从诗词歌赋谈到人生哲学&#…

html仿京东快速购物导航,jQuery仿京东楼层滑动侧边栏高亮(原创)

插件描述:jQuery模仿京东侧边栏点击滑动到该楼层,同时侧边栏随着页面滚动对应导航高亮。更新时间:2017/9/30 下午2:48:37更新说明:1,添加了查看评论按钮来改变对应区的高度2,将floorList和navList作为匿名函…

华为云大数据存储的冗余方式是三副本_华为TaurusDB技术解读(转载)

近日,华为云自研关系型数据库 Taurus 公开亮相。作为华为云自研的最新一代云原生分布式数据库,Taurus 完全兼容 MySQL 8.0,采用计算与存储分离、日志即数据的架构设计,支持 1 写 15 读,性能达到原生 MySQL 的 7 倍。性…

spring html访问统计,spring-mvc访问本地html文件(示例代码)

项目中要用到在线预览word文档,刚开始考虑是要将word转成pdf文件,然后再直接在浏览器打开pdf文档即可,但是项目部署在Linux下,在网上搜了一下没有找到合适的方法,后来项目组讨论用POI生成HTML文件,但是生成…

unity 是厘米还是米_乔丹19岁才1.75米,2年增高近20公分,这个长高方法你能坚持多久...

相信现在有很多的人希望自己在长大之后能去NBA打篮球,但是因为种种原因,最后还是放弃了这个想法, 很多人是因为自己的身体素质达不到要求,比如说天赋上没有达到一个篮球运动员的身高,还有的是因为自己家庭的原因最后放…

win7变成xp风格了怎么改回_微软看了会沉默,把 Windows 10 变成经典 98 风格

众所周知「Windows 10」官方提供的主题都只是换换壁纸,所以喜欢折腾的小伙伴会选择用「UltraUXThemePatcher」来让「Windows 10」支持第三方主题,实现模仿各种风格,如 macOS、Win7、Ubuntu 等。但是由于「Windows 10」版本太多,导…

2021广东高考成绩排名如何查询,2021年广东高考个人排名怎么查询,广东高考成绩排名查询方法...

高考成绩公布后,很多家长和学生咨询我们,广东高考个人成绩排名位次如何查询:广东高考成绩排名,可以通过省招生考试院发布的广东一分一段表来查询,也可以到聚志愿网站直接输入分数查询,一分一段它显示每一个…

区块如何防篡改_深入浅出:一条数据是如何完成上链的

一笔业务数据在区块链处理的流程大致分为三个阶段:分别是上链前处理阶段、链上处理阶段和智能合约处理阶段。一.上链前处理阶段业务数据上链前需要将业务数据处理,并且对信息进行签名。这些过程可以通过对应的工具,比如序列化工具和各种椭圆曲…

锁定计算机在哪里设置方法,怎样锁定电脑?如何设置电脑锁屏【步骤详解】

我们在日常使用电脑的时候,特别是自己的私人电脑时,难免会遇到上个厕所接个水之类的杂事需要离开位置的,也许可能就一两分钟不到的时间,这么点的时间如果关机的话又觉得实在是太麻烦了,但是又不想让其它的人知道我们的…

python 安装html,python安装glob

python 里面的glob模块是怎么用的新手刚学这一块内容,不是很懂 这个模块可以用来统计每个类型物品的统计glob是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符操作,…

hough变换检测圆周_Python OpenCV 霍夫变换

霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体。Hough变换是图像处理中从图像中识别几何形状的基本方法之一。Hough变换的基本原理在于利用点与线的对偶性,将原始图像空间的给定的曲线通过曲线表达…

关于未来计算机的想象作文600字,未来世界的想象作文600字

我背着书包漫无目的地走在街上,刚要出门的时候突然出现了一个大洞,我本想上前一看究竟,结果被石子绊了下去,一下就落进了那个黑洞里,我的世界陷入了一片黑暗。不知过了多久,我眼睛好不容易看到一丝光亮&…

creator qt 字体太小_qt ttf 字体太小的解决方法

编译完成qt以后,发现qt的字体太小了原因是qt的dpi计算错误,这样的情况会导致qt在不同的平台上大小不一解决的方法就是设置好qt的dpi,qt是根据显示器的物理长度或者宽度于分辨率的关系来计算dpi的,所以我们设置exportQWS_DISPLAY"LinuxFB:mmWidth95:0"export QWS_SIZE…

当前超级计算机的应用方兴未艾,四川省若尔盖县高三下学期语文模拟卷(五)

四川省若尔盖县高三下学期语文模拟卷(五)姓名:________ 班级:________ 成绩:________一、选择题 (共3题;共6分)1. (2分)(2017海南模拟) 下列各句中划线成语的使用,全都正确的一项是()①与做人一样,李天来对待试验同样谨小慎微。他说&#xff…

easyui中onchange事件_React中类似Vue的“模板语法”

一、数据绑定类似 Vue 的 v-model,this.state { val: 1, companies: ["阿里巴巴", "腾讯", "百度", "京东"], };companyNameUpdate(e) { this.setState({ companyName: e…

html5着陆页模板,多用途着陆页HTML模板

资源下载此资源下载价格为5D币,请先登录资源文件列表apnew/css/animate.css , 74096apnew/css/bootstrap.min.css , 121260apnew/css/font-awesome.min.css , 27466apnew/css/jquery-ui.css , 36437apnew/css/jquery.carousel-3d.default.css , 3639apnew/css/mater…

php十六进制字符串转成字节数组_10 天 5 千 Star!21 岁本科生给程序员开发的十六进制编辑器...

【导语】:ImHex 是一款界面美观的十六进制编辑器,主要面向逆向工程师和程序员。如果你喜欢暗黑系编辑器,那它应该是你的菜。ImHex 最近在 GitHub 上非常火热,上架五天就收获了 2.5k Star,十天 5k Star。开发者介绍ImHe…