基于TQT507开发板分享如何添加自启动应用程序

电子说

1.2w人已加入

描述

开发板

1. 什么是自启动应用程序

自启动应用程序是指在操作系统启动时自动开始运行的应用程序。通常,这些应用程序被称为守护进程或服务,它们可以在后台运行并提供某种类型的服务。例如,Web 服务器、数据库服务器等等都可以设置为自启动应用程序。

2. 系统启动流程

开发板

3. init,inittab,init.d,rcX.d

开发板

4. /etc/inittab 文件

init 程序会读取/etc/inittab这个文件,inittab 由若干条指令组成。每条指令的结构都是一样的,由以“:”分隔的 4 个段组成,格式如下

< id >:< runlevels >:< action >:< process >

:每个指令的标识符,不能重复。但是对于 busybox 的 init 来说,有着特殊意义。对于 busybox 而言用来指定启动进程的控制 tty,一般我们将串口或者 LCD 屏幕设置为控制 tty。

:对busybox 来说此项完全没用,所以空着。

:动作,用于指定可能用到的动作。

开发板

在/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'开头的脚本文件。

开发板

所以我们可以在 /etc/init.d目录下创建一个以‘S’开头的自启动脚本文件,比如创建一个名为 Shello 的自启动文件,命令如下:

cd /etc/init.d/ //进入/etc/init.d 目录

然后在 Shello 脚本里面输入要执行的命令,比如要在根目录创建 helloworld 文件夹,然后在 helloworld文件夹里面创建 test 文件,那么 Shello 脚本内容如图所示:

#!/bin/sh

开发板

输入完后,保存退出,执行reboot重启

reboot

重启后,可以看见文件创建成功

开发板




审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分