linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)

来源:国外服务器 在您之前已被浏览:1 次
导读:目前正在解读《linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)》的相关信息,《linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)》是由用户自行发布的知识型内容!下面请观看由(国外主机 - www.2bp.net)用户发布《linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)》的详细说明。
笨笨网美国主机,w ww.2 b p .n e t

yaffs制作工具:mkyaffsimage

yaffs2制作工具:mkyaffs2image(适合64M)、mkyaffs2image-128(适合128M以上)

命令:

生成yaffs2镜像文件:./mkyaffs2image-128M rootfs/ rootfs.yaffs2

生成yaffs镜像文件:./mkyaffsimage rootfs/ rootfs.yaffs

烧写:

tftp 0x30008000 rootfs.yaffs2nand erase 0x580000 7a80000nand write.yaffs 0x30008000 0x580000 dbb040

更多Linux后台架构师学习资料,视频,面试题,请私信

linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)


设置内核启动参数:

setenv bootargs "noinitrd root=/dev/mtdblock3 rootfstyle=yaffs2 console=ttySAC0,115200 init=/linuxrc mem=64M"setenv bootcmd "nand read 0x30008000 0x80000 0x500000;bootm 0x30008000"

1.1.3 Cramfs:Compressed ROM File System

Cramfs是Linux的创始人Linus Torvalds参与开发的一种只读的压缩文件系统。它也基于MTD驱动程序。

在cramfs文件系统中,每一页(4KB)被单独压缩,可以随机页访问,其压缩比高达2:1,为嵌入式系统节省大量的Flash存储空间,使系统可通过更低容量的FLASH存储相同的文件,从而降低系统成本。

Cramfs文件系统以压缩方式存储,在运行时解压缩,所以不支持应用程序以XIP(eXecute In Place,芯片内执行)方式运行,所有的应用程序要求被拷到RAM里去运行,但这并不代表比Ramfs需求的RAM空间要大一点,因为Cramfs是采用分页压缩的方式存放档案,在读取档案时,不会一下子就耗用过多的内存空间,只针对目前实际读取的部分分配内存,尚没有读取的部分不分配内存空间,当我们读取的档案不在内存时,Cramfs文件系统自动计算压缩后的资料所存的位置,再即时解压缩到RAM中。

另外,它的速度快,效率高,其只读的特点有利于保护文件系统免受破坏,提高了系统的可靠性。

由于以上特性,Cramfs在嵌入式系统中应用广泛。

但是它的只读属性同时又是它的一大缺陷,使得用户无法对其内容对进扩充。Cramfs映像通常是放在Flash中,但是也能放在别的文件系统里,使用loopback 设备可以把它安装别的文件系统里。

1.1.4 Romfs

传统型的Romfs文件系统是一种简单的、紧凑的、只读的文件系统,不支持动态擦写保存,按顺序存放数据,因而支持应用程序以 XIP(eXecute In Place,片内运行)方式运行,在系统运行时,节省RAM空间。uClinux系统通常采用Romfs文件系统。

1.1.5 ubifs

a)配置内核支持UBIFS

Device Drivers —>Memory Technology Device (MTD) support —>UBI – Unsorted block images —>Enable UBI

配置mtd支持UBI接口

File systems —>Miscellaneous filesystems —>UBIFS file system support

配置内核支持UBIFS文件系统

b)将一个MTD分区4挂载为UBIFS格式

● flash_eraseall /dev/mtd4 //擦除mtd4

● ubiattach /dev/ubi_ctrl -m 4 //和mtd4关联

● ubimkvol /dev/ubi0 -N rootfs -s 100MiB //设定volume 大小(不是固定值,可以用工具改变)及名称

● mount -t ubifs ubi0_0 /mnt/ubi或mount -t ubifs ubi0:rootfs /mnt/ubi

c)制作UBIFS文件系统

在制作UBI镜像时,需要首先确定以下几个参数:

MTD partition size; //对应的FLASH分区大小

flash physical eraseblock size; // FLASH物理擦除块大小

minimum flash input/output unit size; //最小的FLASH输入输出单元大小

for NAND flashes – sub-page size; //对于nand flash来说,子页大小

logical eraseblock size.//逻辑擦除块大小

参数可以由几种方式得到

a)如果使用的是2.6.30以后的内核,这些信息可以通过工具从内核获得,如:mtdinfo –u。

b)之前的内核可以通过以下方法:

● MTD partition size:从内核的分区表或cat /proc/mtd获得

● flash physical eraseblock size:从flash芯片手册中可以得到FLASH物理擦除块大小,或cat /proc/mtd

● minimum flash input/output unit size:

1)nor flash:通常是1个字节

2)nand falsh:一个页面

● sub-page size:通过flash手册获得

● logical eraseblock size:对于有子页的NAND FLASH来说,等于“物理擦除块大小-1页的大小”

c)也可以通过ubi和mtd连接时的产生的信息获取,如:

#modprobe ubi mtd=4 //ubi作为模块加载

#ubiattach /dev/ubi_ctrl -m 4 //通过ubiattach关联MTDUBI: attaching mtd4 to ubi0UBI: physical eraseblock size: 131072 bytes (128 KiB)UBI: logical eraseblock size: 129024 bytesUBI: smallest flash I/O unit: 2048UBI: sub-page size: 512UBI: VID header offset: 512 (aligned 512)UBI: data offset: 2048UBI: attached mtd4 to ubi0

笨笨网美国主机,w ww.2 b p .n e t
提醒:《linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)》最后刷新时间 2025-03-21 11:18:12,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《linux系统类型都有哪些(linux 查看文件系统的方法)(2/24)》该内容的真实性请自行鉴别。