嵌入式嵌入式LinuxLinux的存储技术的存储技术成功之路今天的内容?嵌入式存储的发展与挑战?嵌入式Linux存储方式的介绍?嵌入式Linux对流行存储设备的支持?嵌入式Linux存储方案的选择策略嵌入式存储的发展与挑战?当前flash芯片特点–写入flash采用program操作,可以以字为最小单位–擦除flash采用erase操作,最小擦除单位一般是–有限的擦除/编程循环寿命10k-100k–低功耗,高密度,大容量的flash芯片得到广泛使用?其中按照实现技术不同,flash又分为nor flash和nand flash两种–nor flash提供线性访问接口–nand flash提供基于命令的访问端口MTD 驱动程序简介?MTD——memory technology device?MTD驱动程序提供了以标准设备形式访问flash芯片的机制?Mtd提供以下几个驱动接口–字符设备驱动–块设备驱动–Flash translation layer(FTL)–NFTL/INFTL–JFFS2MTD字符设备驱动?MTD字符设备驱动不提供任何高级特性,直接让应用软件访问flash?一般用来–擦除flash–格式化文件系统–拷贝整个分区MTD块设备驱动?MTD块设备提供抽象接口让flash芯片可以作为磁盘驱动器来访问?利用MTD块设备驱动,我们可以在flash芯片上使用通常的文件系统–fat16,fat32文件系统–ext2文件系统MTD翻译层?MTD提供的翻译层FTL/NFTL?翻译层是实现MTD块设备驱动的软件层?FTL/NFTL不提供wear leveling?不保证power fail安全?没有坏块管理JFFS2文件系统?JFFS2文件系统是专门为flash设计的完整的文件系统,而不仅仅是把flash模拟成一个块设备?JFFS2文件系统可以避免power failure等可能造成数据破坏的现象?JFFS2文件系统可以使擦除和编程操作均匀分布到所有block上,避免影响期间寿命jffs2 文件系统压缩?jffs2 支持即时压缩,加以将通常的文件系统大小缩小50%以上,类似于NTFS提供的压缩功能?jffs2 即时压缩速度很快,不会对系统性能造成大的影响nand flash文件系统?nand flash文件系统需要考虑一些nandflash特点–nand flash使用页面来操作整块数据,包括读取操作–nand flash有可能出现随机的坏块。这些坏块可能在出厂时就存在,也有可能在使用过程中产生,所以对数据的校验是必须的–nand flash芯片擦除操作相对nor flash较快,这一点可以用来实现很高的写入和垃圾搜集速度
嵌入式Linux存储技术 来自淘豆网www.taodocs.com转载请标明出处.