|
[译者序]
在学习嵌入式Linux时看到本文,尚未发现中文译本,因此将其翻译出来,希望对大家有所帮助。 版权请参见原文。译文可自由用于非商业用途。 本文将随原文更新而更新,或者因修正翻译失误而更新,因此,请尽量不要转载,避免其它人因为看到不同的版本而产生迷惑。 如确需转载,请保留译者序部分。 译文原文链接: http://blog.csdn.net/easwy/ 英文水平有限,如发现存在翻译错误,请反馈给我,我将及时修改。 联系方式: easwy.mail at gmail dot com Easwy 2006/7/31 ================================================================== # # ftp://ftp.uk.linux.org/pub/people/dwmw2/mtd/cvs/mtd/mtd-jffs-HOWTO.txt # *** The Linux MTD, JFFS HOWTO *** (正在编写中,请贡献你所知道的) $Id: mtd-jffs-HOWTO.txt,v 1.16 2001/08/13 23:17:55 dwmw2 Exp $ 最后更新: <见上面的CVS Id> 编辑: Vipin Malik (vipin@embeddedLinuxWorks.com) 其它作者的贡献见文档中的注释。 [关于] 本文致力于描述在Linux 2.2.x和2.4.x中设置MTD(Memory Technology Devices), DOC, CFI和JFFS (Journaling Flash File System)的方法。 本文整理工作正在进行中,(希望)在MTD和JFFS邮件列表中其它人的帮助下,本文能够成为一个相当全面的文档。 请将任何注释、更正、贡献发送到:vipin@embeddedLinuxWorks.com 请不要直接向此邮箱发送你的疑问,疑问应发送到邮件列表(见后)。 **************************** NO WARRANTY ***************************** # This HOWTO is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # If you break something you get to keep both parts! Follow these # directions at YOUR OWN RISK. # See the GNU General Public License for more details. ********************************************************************** [开始] 如果你想使用MTD/JFFS认真设计一个项目,请定阅相应的邮件列表。这两个邮件列表都是由majordomo管理的。 MTD: 要定阅此列表,请到http://lists.infradead.org/mailman/listinfo/linux-mtd-cvs 或发送邮件到linux-mtd-request@lists.infradead.org,邮件内容包含"subscribe"。 不要向邮件列表本身发送定阅请求!邮件列表的地址为:linux-mtd@lists.infradead.org。 JFFS: 要定阅此列表,发送邮件到majordomo@axis.com,邮件内容包含"subscribe jffs-dev"。 不要向邮件列表本身发送定阅请求!邮件列表的地址为:jffs-dev@axis.com。 这两个项目的主页: MTD/DOC/ http://www.linux-mtd.infradead.org/ JFFS http://developer.axis.com/software/jffs/ MTD邮件列表归档位置: http://www.linux-mtd.infradead.org/list-archive/ JFFS邮件列表归档位置: http://mhonarc.axis.se/jffs-dev/threads.html <作者赘言> 一个通用的,由不知名维护者维护的非商业嵌入式Linux网站在: http://www.EmbeddedLinuxWorks.com 在这里,你可以找到在嵌入式系统中使用IDE flash磁盘的文章,JFFS/JFF2掉电可靠性测试的报告,在你的设计中使用JFFS系统的技巧,由FLASH引导x86 Linux内核而不需使用BIOS的详细信息,以及在留言板上嵌入式Linux开发社团成员们讨论的论点。 [MTD Flash设备数据库] 在上述网站上,你也会看到一个MTD Flash设备的数据库。这个数据库中列出了能够和MTD驱动程序一起工作的Flash设备列表。如果你使一个Flash设备或DOC (Disk On Chip)支持MTD驱动,请花几分钟时间将相关信息加入此数据库,使其它用户受益。任何人都可以添加或查看此数据库。 使用此链接直接访问MTD Flash数据库: http://www.embeddedLinuxWorks.com/db.html [掉电可靠嵌入数据库] 有一个独立的项目(有自己的邮件列表)致力于在JFFS2上开发写入零时延、掉电可靠的小嵌入数据库。想知道为什么需要这样一个东西,看这里: http://www.embeddedLinuxWorks.com/articles/db_project.html <作者赘言结束> [获取最新代码] 完整的MTD/DOC/JFFS (以及一些工具)的源代码可以通过匿名CVS下载。 按下列步骤进行: 1. 确认你是root; 2. cd /usr/src 3. cvs -d :pserver:anoncvs@cvs.infradead.org:/home/cvs login (密码: anoncvs) 4. cvs -d :pserver:anoncvs@cvs.infradead.org:/home/cvs co mtd 这将在/usr/src下创建一个名为mtd的目录。 现在你有两种选择,取决于你想使用何种内核版本。 2.2系列内核需要增加额外的一步,因为2.2系列内核内未包含任何MTD的代码。 注意: 查看/dev/目录,如果你没有mtd0, mtd1, mtd2, mtdblock0, mtdblock1, mtdblock2这样的设备,请运行mtd/util下的MAKEDEV工具: #sh /usr/src/mtd/util/MAKEDEV
这将在/dev目录下创建出正确的设备。 [使用2.2.x系列内核] (注意:我所能告诉你的是,MTD和JFFS在2.2.x系列内核中不能以modules的方式工作。如果你想使用modules,我推荐你升级到2.4.x系列内核。) 从你所喜爱的源(ftp.kernel.org)下载2.2.17或2.2.18内核源代码,然后安装内核到/usr/src/linux-2.2.x,并将/usr/src/linux这个符号链接指向你的内核目录。 按你喜爱的方法配置内核(使用make config或make menuconfig或make xconfig),确保内核可以编译通过。 从下面的网站下载MTD补丁: ftp://ftp.infradead.org/pub/mtd/patches 将补丁移到/usr/src/linux并执行: patch -p1 < patch文件名
确保打补丁的过程一切正常,没有出现任何错误。 这将把MTD功能加入到你的内核,并将MTD代码更新到补丁发布的日期。 现在你有两个选择。你可以make config然后在当前内核里配置MTD;或者你可能想打最新的CVS补丁。 如果你想打最新的CVS补丁,按下面2.4.x的操作步骤进行。 [使用2.4.x系列内核] 如果你想打CVS上的最新代码(在/usr/src/mtd目录),执行: cd /usr/src/mtd/patches
sh patchin.sh /usr/src/linux 这将会创建从"/usr/src/linux/drivers/mtd/<files here>"到"/usr/src/mtd/kernel/<latest files here>"对应文件的符号链接。 同样的事情也发生在"/usr/src/linux/fs/jffs"和"/usr/src/linux/include/linux/mtd"目录上。 现在你内核中的代码已经是CVS上的最新代码了。你可以make config (或menuconfig或xconfig),并且按照下面的方法配置MTD/JFFS等功能。 最新评论共有 4 位网友发表了评论
查看所有评论
发表评论
热点关注
|
The Linux MTD, JFFS HOWTO
来源:
作者:
时间:2008-02-15
Tag:
点击:
