首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

嵌入式Linux中自己写的程序如何开机自启动

1 自启动的三种方式 在Linux系统中,配置应用程序自动启动的方法有以下三种: 1.1 通过/Linuxrc脚本直接启动 Linux内核一旦开始执行,它将通过驱动程序来初始化所有硬件设备,这个初始化过程可以在启动时的...嵌入式应用开发中,可以根据实际情况决定是否使用标准的init执行方式,也许这个init是个静态程序,它能够完成我们的嵌入应用的特定任务,那完全不用考虑inittab了,在这里可以采用比较灵活的措施。...例如,在某些Linux系统中,corn程序通过/etc/init.d/corn脚本启动,Apache通过/etc/init.d/httpd启动,syslogd通过/etc/init.d/syslogd启动...因此可以编辑rc.local文件,将要执行的程序(命令)添加到该文件夹中。Linux系统在启动后还未登录前,将自动执行该程序(命令),达到开机自动运行用户的应用程序的目的。...读取硬盘中的MBR(主引导记录),加载引导程序linux中是grub),grub程序会加载系统kernel和虚拟文件系统。

19110

嵌入式Linux OS启动流程,了解一下!

user space 五、不同的OS Android、Yocto、ubuntu、fedora 补充: 一个嵌入式Linux系统从软件的角度看通常可以分为四个层次: 1、 引导加载程序。...(bootROM,uboot) 2、Linux内核。特定于嵌入式板子的定制内核以及内核的启动参数。(linux kernel) 3、 文件系统。...4、 用户应用程序。特定于用户的应用程序。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。常用的嵌入式GUI有:MicroWindows和MiniGUI等。...BootLoader是一段小程序,主要功能是引导操作系统启动。...可以把它想象成PC机Linux上的GRUB/LILO引导程序,只不过在嵌入式linux中,没有BIOS,而是直接从flash中运行,来装载内核。

2K11
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    嵌入式Linux系统脚本小技巧---启动脚本

    这里介绍一个小技巧,在系统启动时,预留一个启动脚本,在需要临时修改一些系统配置或者额外启动程序时比较方便。...我们都知道一般嵌入式Linux系统启动脚本是/etc/init.d/rcS,我们的应用程序启动入口也是在这个脚本里添加,一般会在这里添加一个应用程序启动脚本,最好不要再这里直接添加启动程序,这样便于后期应用程序启动脚本的修改...现在在系统启动脚本rcS里添加一个应用程序启动脚本,暂且叫init_app.sh,这个init_app.sh里面,主要是启动应用程序,初始化应用配置参数。...使用/bin/sh启动脚本,这样不管这个脚本有没有可执行权限,都会执行。 2. 使用后台运行“&”,这样不影响init_app.sh脚本的正常执行。...如果使用现场需要临时启动一个额外的程序,我们就不需要再去改应用程序里的启动脚本了,直接再run.sh里添加即可。

    1.2K30

    嵌入式Linux:如何进行嵌入式Linux开发?

    嵌入式Linux开发主要有四种方式:裸机开发、SDK开发、驱动开发和应用开发。 1、裸机开发 裸机开发通常指在没有操作系统支持的环境中直接在硬件上运行程序的开发。...在嵌入式Linux SDK开发中,开发者可以利用Linux系统的强大功能和灵活性,同时针对特定的硬件平台进行优化和调整,以满足嵌入式设备的特定需求。...3、驱动开发 驱动开发是指为嵌入式Linux系统编写设备驱动程序的过程。在这个过程中,开发者需要深入理解Linux内核架构,学会如何在Linux内核环境下编写、调试和维护设备驱动程序。...这3类驱动程序共同构成了Linux系统与各类硬件设备交互的基础,确保了系统的多功能性和高效性。它们的实现通常涉及到深入的操作系统内核知识,硬件通信协议,以及驱动程序开发的技巧。...4、应用开发 Linux 应用开发是指在 Linux 操作系统上开发应用程序的过程。这包括创建、编写、调试和优化应用程序,以在 Linux 环境中运行。

    52100

    启动嵌入式间:资源有限的系统启动

    启动一个程序,它是在芯片上电复位,以执行,块独立于操作系统而在。由于操作系统须要通过启动这个模块来载入和引导的。所以启动的英文术语是boot loader。...那我们咱们去理解内存资源有限型的嵌入式系统的启动呢?就以51为例。...非常明显这样的系统跑不了linux这样的高大上的系统,那51的启动都干嘛呢?我们从程序开发流程说起: 1)编敲代码。编译。链接成可运行文件。...然后把data从载入的地方copy到ram的执行区域(链接地址) 6)初始化好bss,然后就jump到主程序開始跑啦。 简单的嵌入式系统一般没有os。...所以基于51的SOC系统也能够长得像S5PV210这样的SOC的系统,代码是放在外置的nand flash或者card中,那启动就要成为一个独立的模块和U启动COS、应用程序放在外置的nand中。

    38020

    Linux启动引导程序(GRUB)加载内核的过程

    我们知道启动引导程序(Boot Loader,也就是 GRUB)会在启动过程中加载内核,之后内核才能取代 BIOS 接管启动过程。如果没有启动引导程,那么内核是不能被加载的。...本节,我们就来看看启动引导程序加载内核的过程,当然 initramfs 这个虚拟文件系统也是要靠启动引导程序调用的。...在 CentOS 6.x 中,启动引导程序默认是 GRUB,GRUB 是现在最为流行的启动引导程序,我们也用 GRUB 来说明启动引导程序的作用。...那么 Linux 的解决办法是把 GRUB 的程序分成了三个阶段来执行。...Stage 1:执行GRUB主程序第一阶段是用来执行 GRUB 主程序的,这个主程序必须放在启动区中(也就是 MBR 或者引导扇区中)。

    40320

    Linux通用java程序启动脚本代码实例

    /bin/sh #该脚本为Linux启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。...#Java程序所在的目录(classes的上一级目录) APP_HOME=/opt/tudaxia/test/WEB-INF #需要启动的Java主程序(main方法类) APP_MAINCLASS=...如果程序已经启动($psid不等于0),则提示程序启动 #3. 如果程序没有被启动,则执行启动命令行 #4. 启动命令执行后,再次调用checkpid函数 #5....如果程序已经启动($psid不等于0),则开始执行停止,否则,提示程序未运行 #3. 使用kill -9 pid命令进行强制杀死进程 #4....如果程序已经启动($psid不等于0),则提示正在运行并表示出pid #3.

    2.2K20

    嵌入式LinuxLinux库函数

    1、Linux库函数简介 Linux 提供了丰富的库函数,涵盖了各种领域,从文件操作到网络编程、图形界面、数学运算等。...这些库函数大多数都是标准的 C 库函数,同时也包括一些特定于 Linux 系统的库。 Linux库函数通常以动态库文件(.so)的形式提供,存放在根文件系统的 /lib 目录下。...Linux 内核提供了一系列系统调用供应用层使用,直接使用系统调用是一种方法。然而,有些系统调用使用起来不够方便,因此引入了 C 语言库。...2、标准C语言库函数 在Linux系统下,使用的C语言库主要是GNU C语言函数库,也被称为glibc。...它是Linux下的标准C语言函数库,为开发者提供了丰富的函数集,涵盖了输入输出、字符串处理、数学运算、文件操作等多个领域。

    13300

    Linux非root用户如何使用80端口启动程序

    默认情况下Linux的1024以下端口是只有root用户才有权限占用,我们的tomcat,apache,nginx等等程序如果想要用普通用户来占用80端口的话就会抛出java.net.BindException...bind时perror提示错误信息:permission denied 解决办法有两种:  1.使用非80端口启动程序,然后再用iptables做一个端口转发。   ...2.假设我们需要启动程序是nginx,那么这么做也可以达到目的。 ...一开始我们查看nginx的权限描述:  -rwxr-xr-x 1 nginx dev 2408122 Sep  5 16:01 nginx  这个时候必然是无法正常启动的。 ...nginx  然后再加上s权限:  chmod u+s nginx  再次查看权限描述的时候:  -rwsr-xr-x 1 root root 2408122 Sep  5 16:01 nginx  这样就能启动

    5.4K50

    嵌入式Linux学习路线

    自己总结的Linux学习路线,还在这条路上继续奔跑着… 我将其总结为4个阶段吧: 入门 - 抛弃旧的思维习惯,熟练使用 Linux 命令行 从Window切换到Linux是一件很痛苦的事情,因为人类接受信息最快的方式就是图形化的信息...在这一阶段,推荐的书籍是《鸟哥的私房菜》、《linux shell脚本攻略》。 《鸟哥的私房菜》- 几乎每个linux程序的必经之路。...中级 - 通过系统调用或内核接口,学会自己进行程序设计 这一部分,我的建议是分两部分学习: linux程序设计,通过系统调用学会在linux环境下进行C/C++程序开发。...推荐的书籍有《Linux环境下C编程指南》、《UNIX 环境高级编程》。 linux驱动开发,学会基本的linux内核数据结构、接口等等,了解linux设备模型、设备树等,为理解内核打下坚实的基础。...linux内核源码解析,对每个子系统的代码架构深入研究,能对内核进行模块裁剪等。推荐的书籍有《Linux内核设计与实现》、《Linux内核源代码情景分析》和《深入理解Linux内核(第三版)》。

    5.6K10
    领券