定制嵌入式Linux系统的启动程序.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
定制嵌入式Linux系统的启动程序

定制嵌入式 Linux 系统的启动程序 摘 要 嵌入式系统的特点决定了它具有功能的专用性,而不能作为一种通用的计算机系统。基 于 Linux 操作系统开发嵌入式产品,必须对它的启动程序进行定制。本文研究了 Linux 操作系 统的启动过程,并给出了如何为嵌入式 Linux 系统添加用户自己的启动服务,以及指定开机后 运行的主功能程序的方法。 关键词 嵌入式 Linux 启动程序 一、嵌入式系统的概念及特点[1] 引用电气工程师协会 IEE 给嵌入式系统下的一个定义:嵌入式系统是用来控制或监视机器、 装置或工厂等大规模系统的设备。但是后来随着嵌入式系统的发展,这个定义就变得不是很准确。 比如说像手机、PDA 及电子词典之类的小型设备,它们均由内部的嵌入式系统控制,但是却不 可称之为大规模的系统。 有些文献这样下定义我觉得比较确切:嵌入式系统是电脑软件与硬件的综合体,它是以应用为中 心,以计算机技术为基础,软硬件均可裁剪,能够适应实际应用中对功能、可靠性、成本、体积、 功耗等严格要求的专用计算机系统。 嵌入式系统具有以下几个特点: 1、 嵌入式系统是先进的计算机技术、半导体技术以及电子技术与各个行业的具体应用相结 合的产物。也就是说嵌入式系统并不像通用计算机那样通用,而是与各待业的特定应用相关联的, 每行每业的嵌入式系统要实现的功能也不一样。因此,在嵌入式系统上没有哪个公司的操作系统 和处理器能够垄断市场。 2、 嵌入式系统实现的功能单一,通常是面向用户、面向产品、面向特定应用的,一般只实 现某行业的特定功能。 3、 成本低、体积小、功耗低及可靠性高,在运行速度及存储容量上有一定的限制。 4、 嵌入式系统本身不具备在其上进一步开发的能力,必须要在相关的开发平台上开发。 5、 全自动操作循环,一直重复地执行一个特定的程序 嵌入式系统的灵魂应该说是它的嵌入式操作系统,本文使用的是嵌入式 Linux,硬件基础是 基于 x86 的嵌入式主板。由上述嵌入式系统的特点可知,为了让嵌入式系统具有一个产品或仪 器的特性,不能让像通用计算机那样开机后进入桌面系统,而是要运行指定服务和一个特定的用 户应用程序。本文将如何让 Linux 开机后执行指定服务和运行一特定的用户程序进行探讨。 二、Linux 系统的启动过程 让我们先了解一下 Linux 系统启动的过程。当引导程序(如 LILO)加载 Linux 内 核映象启动时,它先进行内核的初始化工作,主要是检测整个硬件环境。内核 初始化完成后,系统就启动 init 进程,它是系统的第一个用户级进程。Linux 系 统具有许多运行级别,它由文件/etc/inittab 文件决定,各级别的功能如下: 0:终止或停止系统的运行 1:单用户模式 2:多用户模式,但无网络功能 3:多用户模式且有网络功能 4:保留,用户可以定义自己的启动模式 5:图形界面登陆模式 6:重新启动系统 init 进程运行后,它会访问/etc/inittab 文件,该文件确定系统运行于上面的哪个级别。由 于嵌入式系统的特性,我们要让系统运行于级别 1 上,即单用户模式,这只要在/etc/inittab 文件的 id:3:initdefault 行,将 3 改为 0 即可。同时每个级别还对应了一个启动各种服 务的脚本目录,一般在/etc/rc.d/下面。 接着 init 进程又分别启动/etc/rc.d/rc.sysinit 和与等级 n 相对应的/etc/rc.d/rcn.d 目录里 的初始化进程,最后 init 会运行用户登陆程序,这时在终端上就会显示 login:的登录信息,用 户登录成功后会启动 shell 程序,shell 启动后,它会读取并执行文件/etc/profile,/etc/bashrc, 和用户主目录下的文件.bashrc,这些文件负责建立用户自己的环境。 三、设置特定服务及开机启动程序 如前所述,添加指定服务,定制特定的启动程序,就从配置文件/etc/rc.d/rcn.d 和 /etc/profile 入手。 1、添加指定的服务:是指在系统启动时进行一些用户所需要的操作,如初始化用户应用程 序或用户开发的新硬件等等。可以增加自己的脚本程序来完成这些工作,主要步骤如下: (1) 仿照系统目录/etc/rc.d/init.d 里的任何一个脚本文件的格式自己编写一个启动服务脚 本文件。 (2) 将写好

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档