网站大量收购独家精品文档,联系QQ:2885784924

嵌入式系统6831664204.ppt

  1. 1、本文档共130页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
xlanchen@2007.6.4 Embedded Operating Systems * 复制根文件系统到RAM disk 可以是我们自己制作的 也可以是之前挂载的ep7312的initrd.img 卸载根文件系统 现在initrd.img文件中已经包含了目标板的整个根文件系统 xlanchen@2007.6.4 Embedded Operating Systems * 最后形成经压缩的RAM disk -9表示最高级的压缩算法 xlanchen@2007.6.4 Embedded Operating Systems * 本课内容回顾 一、嵌入式Linux开发综述 二、Linux的配置和编译 三、根文件系统及其制作 xlanchen@2007.6.4 Embedded Operating Systems * 作业 在嵌入式Linux系统开发中,存在哪几种主机/目标机开发体系结构? 主机/目标板的调试方式有哪几种? 嵌入式Linux系统的引导配置的类型有哪几种? * * * * xlanchen@2007.6.4 Embedded Operating Systems * 定制应用程序 自己的应用程序也要放在根文件系统的某个目录下,这取决于应用程序所拥有的组件数量和类型 如果二进制文件较少,可以考虑放到/bin目录下 如果二进制文件多且复杂并且包含一些数据文件,最好在根文件系统中增加一个单独的目录,例如/project 第二种情况下,通常需要设置PATH环境变量,以便能够找到可执行文件 xlanchen@2007.6.4 Embedded Operating Systems * 准备系统初始化文件 系统初始化也是Unix系统很重要的一部分,正如我们之前所说,内核的最后一部初始化操作为启动init进程,这个程序负责创建一些其他进程并且启动系统的一些关键组件运行 在Linux中,init进程模仿了System V的init,这对于嵌入式Linux而言,功能太强大 我们将介绍 标准的system V 初始化 BusyBox初始化 xlanchen@2007.6.4 Embedded Operating Systems * 关于init的进一步说明 事实上,内核并不关心init进程是哪一个,init进程只不过代表了内核在初始化完成后要启动应用程序 我们可以修改启动参数让内核使用我们自己的init init=PATH_TO_YOUR_INIT 缺点在于,这样只能启动我们自己的应用,如果有必要还需要承担标准init的一部分工作,例如启动其他必要的系统组件 xlanchen@2007.6.4 Embedded Operating Systems * 更进一步,当我们的程序出现异常时,可能导致整个系统的关闭或者重启。在有的情况下,这就是系统所希望的,但在大多数情况下,这样做是无用的。 因此,比较安全的方法就是使用一个真正的init程序 xlanchen@2007.6.4 Embedded Operating Systems * 标准的system V 初始化 标准的init包在多数Linux发行版本中都能找到,也可以在 ftp://ftp.cistron.nl/pub/people/miquels/sysvinit/ 上找到,目前由Miquel van Soorenburg维护 包含的命令有: halt,init,killall5,last,mesg,runlevel,shutdown,sulogin,utmpdump,以及wall xlanchen@2007.6.4 Embedded Operating Systems * 下载到源码之后,首先解压缩,然后使用交叉编译器编译 make CC=arm-linux-gcc 安装到根文件系统中 make BIN_OWNER=“$(id –un)” BIN_GROUP=“$(id –gn)” ROOT=根文件系统目录 install 由于我们使用当前用户权限,而Makefile默认使用root权限,因此可能会失败,这可以忽略。因为目标系统中不考虑多用户。否则可以在root权限下做。 xlanchen@2007.6.4 Embedded Operating Systems * 若使用root权限,要小心设置ROOT指向目标系统的根文件系统,否则将覆盖主机上的相应程序。由于目标码不同,这将导致系统出错。 安装完init程序后,需要增加/etc/inittab文件,并在/etc/rc.d中增加一些文件 /etc/inittab定义runlevels /etc/rc.d目录定义各个runlevels上运行的服务 xlanchen@2007.6.4 Embedded Operating Syste

文档评论(0)

企业资源 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档