当前位置:首页 » 编程软件 » rc脚本编写

rc脚本编写

发布时间: 2025-08-27 00:07:57

‘壹’ 安卓.sh和.rc脚本的区别

rc是android初始化脚本,用android init language编写,通过init程序来执行。sh是linux里面的shell脚本,可以在sh或者 bash里面执行。

在Android中使用启动脚本init.rc,可以在系统的初始化中进行简单的操作。
init.rc启动脚本路径:system/core/rootdir/init.rc
内容:
Commands:命令
Actions:动作
Triggers:触发条件
Services:服务
Options:选项
Properties:属性
Commands是一些基本操作。如:
mkdir /system
mkdir /data 0771 system system
mkdir /persist 0771 system system
devwait /dev/block/mmcblk0p12
mount ext3 /dev/block/mmcblk0p
Action表示一系列命令,通常在Triggers中调用,如:

on init //表示一个触发条件
sysclktz 0
loglevel 3
# setup the global environment
export PATH /sbin:/system/sbin:/system/bin:/system/xbin
export LD_LIBRARY_PATH /system/lib
export ANDROID_BOOTLOGO 1
Services通常表示启动一个可执行程序,Options是服务的附加内容,用于配合服务使用。
service vold /system/bin/vold //vold是服务名称,/system/bin/vold是所对应的可执行程序。
socket vold stream 0660 root mount //socket是配合服务使用的选项
ioprio be 2
service netd /system/bin/netd
socket netd stream 0660 root system
配合服务使用的选项有socket,user,group,oneshot。
oneshot表示该服务只启动一次,而如果没有oneshot选项,这个可执行程序将一直存在——如果可执行程序被杀死,则会重新启动。
Properties是系统中使用的一些值,可以进行设置和读写。
setprop ro.HIDDEN_APP_MEM 5120 //setprop用于设置属性
setprop ro.CONTENT_PROVIDER_MEM 5632
setprop ro.EMPTY_APP_MEM 6144
...
on property:ro.kernel.qemu=1 //on property用于判断属性
start adbd
这里的属性在整个android系统运行中都是一致的。
init脚本的关键字可以参考init进程中的system/core/init/keyword.h文件。如:
KEYWORD(chroot, COMMAND, 1, do_chroot) //chroot是命令,do_chroot()是调用的函数,这个函数在init进程中的system/core/init/builtins.c文件中定义。

热点内容
cf怎么挤服务器 发布:2025-08-27 02:39:03 浏览:683
db2数据库字符集 发布:2025-08-27 02:18:58 浏览:364
连接linux虚拟机 发布:2025-08-27 02:08:36 浏览:328
扫码支付源码 发布:2025-08-27 02:06:18 浏览:386
脚本训练营 发布:2025-08-27 01:53:04 浏览:101
数据库什么是主键 发布:2025-08-27 01:50:50 浏览:913
欧美的ip扫描服务器 发布:2025-08-27 01:49:22 浏览:432
笔趣阁关闭自动缓存 发布:2025-08-27 01:38:35 浏览:114
光遇脚本音乐算不算开挂 发布:2025-08-27 01:17:34 浏览:1005
lr脚本中文乱码 发布:2025-08-27 00:51:51 浏览:688