- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种实现嵌入式Linux的新方法
DIV
id=contentscript
src=/mx/baid.jsDIV
id=viewadscript
src=/a/lw.js
摘要
在Linux中会遇到由于文件系统损坏,需要人工修复而导致系统无法正常启动的现象。本文采用Linux初始化内存盘(INITRD)技术,并把内存的一部分作为Linux的根目录,每次启动把完整的文件系统解压到这里,避免了系统从损坏的文件系统启动。这不仅使系统能正常启动,而且提高了系统性能。
关键词
Linux
嵌入式
INITRD
ramdisk
【Abstract】In
course
of
building
embedded
Linux,
the
system
will
not
start
because
of
the
bad
filesystem
.
The
paper
describes
a
new
method,
which
adopts
INITial
Ramdisk
Disk
and
assigns
part
of
memories
as
root
directory
of
Linux.
It
avoids
startup
from
a
bad
filesystem
because
it
uncompresses
integral
filesystem
to
ramdisk
every
time.
With
this
method,
the
system
can
not
only
start
normally,
but
also
it’s
performance
is
very
good.
【Keyword】Linux
embedded
INITRD
ramdisk
引言
在Linux操作系统中,有一项特殊的功能——初始化内存盘INITRD(INITial
Ram
Disk)技术,而且内核支持压缩的文件系统映像。有了这两项功能,我们可以让Linux系统从小的初始化内存盘启动,并把系统内存的一部分作为根文件系统挂载,而且不使用交换分区(如果不运行X
Windows这是完全可以的),即把Linux系统完全嵌入到内存中,而不依赖于任何其他硬盘。现在PC机内存至少128M,而根文件系统所用的只有30M,因此不仅不会使整机性能下降,反而有很大的提高。
由于系统不工作在硬盘上,所以系统消除了由于机械驱动而导致的
问题
;因为系统运行于内存中,根文件系统和操作完全在CPU/RAM环境下,系统性能在速度和可靠性方面非常好;它不会由于非法关机而破坏文件系统,因为我们每一次启动是把压缩的文件系统解压至内存盘中作为根文件系统挂载。
1
硬件要求
对于这样一个系统,硬件不需要特别的设计,只是通过普通的PC机上的组件实现。值得一提是系统的内存的大小,它至少应该有64M。因为30M作为Ramdisk使用,剩下30多兆作为系统运行,才能保证系统的正常工作,我们现在的
计算
机内存一般为128M,这个条件都能满足。唯一特别的是一个flash盘
,它相当于一个IDE接口的硬盘,大小为20M,主要用它作为启动LILO和放置根文件系统压缩包。
2
Ramdisk的使用
Ramdisk就是将内存的一部分分配为一个分区并作为硬盘来使用。对于系统运行时不断使用的程序,将它们放在Ramdisk中将加快计算机的操作,如大数据量的
网络
服务器、无盘工作站等。为了能够使用Ramdisk,我们在编译内核时须将block
device中的Ramdisk支持选上,它下面还有两个选项,一个是设定Ramdisk的大小,默认是4096k;另一个是initrd的支持。它既可以直接编译进内核,也可以编译成模块,在需要的时候加载。我们由于在启动时就用它,所以必须将它直接编译进内核。
如果对Ramdisk的支持已经编译进内核,我们就可以使用它了。首先在/mnt目录下创建目录ram,运行mkdir
/mnt/ram;然后对/dev/ram0创建文件系统,运行mke2fs
/dev/ram;最后挂载上/dev/ram,运行mount
/dev/ram
/mnt/ram,就可以象对普通硬盘一样对它进行操作了。值得注意的是,在创建文件系统的时候,在屏幕上输出1024
inodes
,4096
blocks,即ramdisk大小为4M=4096个块,但是我们挂载上之后,用命令df
–k
/dev/ram查看时,显示出来ramdisk大小只有3963K,这是由于文件系统本身占用了一些空间。
我们能根据需要改变ramdisk地大小。如我们要把默认的4M增大到10M,当ramdisk是直接编译进内核的情况下,可在LILO配置文件lilo.conf中加入一行:append=“ramdis_size=10000”,运行LILO后,重
您可能关注的文档
- 集成供应链运作与物流管理研究.doc
- 青岛 环境科学 污水处理厂 实习报告 实习日记.doc
- 集气站站内工艺管道吹扫试压方案.doc
- 青海330kV门源,八宝输变电工程.doc
- 马达教程- 第二章 变压器.doc
- 一汽大众宝来常见问题与解决方法.doc
- 一片DS18B20构成测温系统C程序.doc
- 一种全反射型的LED路灯透镜光学设计.doc
- 一种小型化准自补超宽带天线的分析与设计.doc
- 一种用于射频功率放大器的新型预失真器的设计.doc
- DB44_T+2767-2025河口海湾总氮、总磷水质评价指南.docx
- 中医药科技成果转化评价技术规范.docx
- DB44_T+2750-2025农村供水工程数字化建设技术导则.docx
- DB44_T+2769-2025金属矿山生态修复技术规范.docx
- 镁合金航天航空零部件长效防护微弧氧化膜层工艺规范.docx
- 《甘青青兰中绿原酸和胡麻苷含量的测定 高效液相色谱法》发布稿.pdf
- DB44_T+753-2025声环境质量自动监测技术规范.docx
- 信息技术 智算服务 异构算力虚拟化及池化系统要求.docx
- DB44_T+2759-2025黄荆栽培技术规程.docx
- 废生物制药溶媒再生乙腈.docx
原创力文档


文档评论(0)