基于TQT507开发板分享如何添加自启动应用程序
1. 什么是自启动应用程序
自启动应用程序是指在操作系统启动时自动开始运行的应用程序。通常,这些应用程序被称为守护进程或服务,它们可以在后台运行并提供某种类型的服务。例如,Web 服务器、数据库服务器等等都可以设置为自启动应用程序。
2. 系统启动流程
3. init,inittab,init.d,rcX.d
4. /etc/inittab 文件
init 程序会读取/etc/inittab这个文件,inittab 由若干条指令组成。每条指令的结构都是一样的,由以“:”分隔的 4 个段组成,格式如下
<id>:<runlevels>:<action>:<process>
<id>:每个指令的标识符,不能重复。但是对于<id>有着特殊意义。对于<id>用来指定启动进程的控制
<runlevels>:对busybox 来说此项完全没用,所以空着。
<action>:动作,用于指定<process>可能用到的动作。
在/etc/inittab文件中
::sysinit:/etc/init.d/rcS
系统启动以后运行/etc/init.d/rcS 这个脚本文件 。
5. 在/etc/init.d下新建脚本
buildroot根文件系统中是直接在/etc/init.d/中添加自启脚本的。默认情况下buildroot构建的根文件系统中rcS 文件内容如图所示,打开/etc/init.d/rcS 文件
vi /etc/init.d/rcS
rcS 默认会在/etc/init.d 目录下查找所有以‘S’开头的脚本,然后依次执行这些脚本
在rcS的同级目录下有许多'S'开头的脚本文件。
所以我们可以在创建一个以‘S’开头的自启动脚本文件,比如创建一个名为
cd /etc/init.d/ //进入/etc/init.d 目录 touch Shello //使用 touch 命令创建 Shello 脚本 chmod 777 Shello //给 Shelloworld 脚本可执行权限
然后在
#!/bin/sh cd / mkdir helloworld cd helloworld touch test
输入完后,保存退出,执行reboot重启
reboot
重启后,可以看见文件创建成功