内核与根文件系统实验.docxVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
七 内核与根文件系统实验 1、 实验目的 1、 了解 UP-TECH S2410/P270 DVP的根文件系统结构 2、 了解根文件系统的生成过程 3、 完成一个简单的文件系统生成步骤 4、 了解 busybox、mkcramfs 工具 2、 Linux 内核背景知识 自1991 年11 月由芬兰的 Linus Ttorvalds 推出 Linux 0.1.0 版内核至 今, Linux 内核已 经升级到 Linux2.6.7 (写本文档时, 发布的最新版 Linux 内核)。其发展 速度是如此的迅猛,是目前市场上唯一可以挑战 Windows 的操作系统。 在其发展过程中得 到分布于全世界的广大 OpenSource 项目追随者的大力支持。尤其是一 些曾经参与 Unix 开 发的人员,他们把应用于 Unix 上的许多应用程序移植到 Linux 上来, 使得 Linux 的功能得 到巨大的扩展。目前比较稳定的版本是 Linux2.4.8 。在 Linux 的版本号 中,第一个数为主 版本号。第二个为次版本号。第三个为修订号。次版本号为偶数表明是 稳定发行版本,奇 数则是在开发中的版本。随着其功能不断加强,灵活多样的实现加上其 可定制的特性以及 开放源码的优势, Linux 在各个领域的应用正变得越来越广泛。目前 Linux 的应用正有舍 去中间奔两头的趋势,即在 PC 机上 Linux 要真正取代 Windows,或许还 有很长的路要走, 但在服务器市场上它已经牢牢站稳脚跟。而随着嵌入式领域的兴起更是 为Linux 的长足发 展提供了无限广阔的空间。目前专门针对嵌入式设备的 Linux 改版就有 好几种。包括针对 无MMU的uClinx 和针对有 MMU的标准 LINUX 在各个硬件体系结构的移 植版本。 uClinux 是一种 Linux 的变型版本,其主要针对 ARM7TDM,I DragonBall 系列的 68EZ328, 68VZ328,ColdFire 系列的 5272,5307 等大量不带 MM(U 内存管理单 元)功能模块的芯片。 这种芯片面向低端市场,价格便宜功能灵活。但是传统的 Linux 内核采 用虚拟内存管理技 术,这种设计运行在没有 MMU的芯片上时,这部分关于内存管理的代码 就变成冗余代码甚 至对系统整体性能产生负面影响。 uClinux 正是为了解决这一问题而开 发的。其名称中 “u” (发音 miu)就是 micro ,小的意思。而 “C”则是 Control ,控制的意思。 即uClinux 是为 微控制领域量身定做的 Linux 版本。 uClinux 的设计就是通过对标准 Linux 内核裁减,去 除虚拟内存管理部分的代码,并对内存分配进行优化,从而达到提高系 统运行效率的目的。 它虽然体积小但依然保存了 Linux 内核的大多数优点。其主要特点有: 1)支持通用 Linux API 2)内核体积可以小于 512K 3)具有完整的 TCP/IP 协议栈 4)支持其它大量的网络协议 5)支持各种文件系统( NFS,ext2, romfs, jffs , FAT16/32 以及 MS- DOS) 但是 uClinux 的应用程序开发要求用户自己正确的处理内存管理,一旦 不慎错误地修改了 其他进程的内存,将可能造成系统死机。基于像 ARM2410这样的 ARM9 内核的 ARM-LINUX 使用了 MMU的内存管理,对进程有保护,提高了嵌入式系统中多进程的 保护能力。使用户 应用程序的可靠性得以提高,降低了用户的开发难度。 linux 内核的基本结构如图 4.1.1 所示: 三、实验内容 使用 busybox 生成文件系统中的命令部分,使用 mkcramfs 工具制作文 件系统,并完成 将文件系统放置到开发板的烧写工作。 四、 Linux 移植准备 所谓 Linux 移植就是把 Linux 操作系统针对具体的目标平台做必要改写 之后,安装到该目 标平台使其正确的运行起来。这个概念目前在嵌入式开发领域讲的比较 多。其基本内容是: 获取某一版本的 Linux 内核源码,根据我们的具体目标平台对这源码进 行必要的改写(主 要是修改体系结构相关部分),然后添加一些外设的驱动,打造一款适 合于我们目标平台(可 以是嵌入式便携设备也可以是其它体系结构的 PC 机)的新操作系统, 对该系统进行针对我 们目标平台的交叉编译,生成一个内核映象文件,最后通过一些手段把 该映象文件烧写(安 装)到我们目标平台中。而通常对 Linux 源码的改写工作难度较大,它 要求你不仅对 Linux 内核结构要非常熟悉,还要求你对目标平台的硬件结构要非常熟悉。同 时还要求你对相关 版本的汇编语言较熟悉因为与体系结构相关的部

您可能关注的文档

文档评论(0)

冬天一把火 + 关注
实名认证
文档贡献者

夏天的一块冰

1亿VIP精品文档

相关文档