recovery 中tmpfs的使用及tmpfs简介

来源:互联网 发布:java web课程设计 编辑:程序博客网 时间:2024/06/05 14:07

1 recovery里面的tmpfs的作用:利用虚拟内存下载升级镜像。也就是/tmp目录。

在recovery里面的init.rc里面有 mount /tmp /tmp tmpfs正是利用tmpfs的特性来下载升级文件的。

2 在init进程里面创建tmpfs文件系统目录并挂载相关的文件系统

    mkdir("/dev", 0755);
    mkdir("/proc", 0755);
    mkdir("/sys", 0755);

    mount("tmpfs", "/dev", "tmpfs", 0, "mode=0755");

 在init初始化过程中,Android分别挂载了tmpfs,devpts,proc,sysfs 4类文件系统

 tmpfs文件系统
    tmpfs是一种虚拟内存文件系统,因此它会将所有的文件存储在虚拟内存中,并且tmpfs下的所有内容均为临时性的内容,如果你将tmpfs文件系统卸载后,那么其下的所有的内容将不复存在。
    tmpfs有些像虚拟磁盘(ramdisk),但不是一回事。说其像虚拟磁盘,是因为它
可以使用你的RAM,但它也可以使用你的交换分区。传统的虚拟磁盘是一个块设
备,而且需要一个mkfs之类的命令格式化它才能使用。tmpfs是一个独立的文件系
统,不是块设备,只要挂接,立即就可以使用。
    tmpfs的大下是不确定的,它最初只有很小的空间,但随着文件的复制和创建,
它的大小就会不断变化,换句话说,它会根据你的实际需要而改变大小;tmpfs的速
度非常惊人,毕竟它是驻留在RAM中的,即使用了交换分区,性能仍然非常卓越;
由于tmpfs是驻留在RAM的,因此它的内容是不持久的,断电后,tmpfs的内容就消失
了,这也是被称作tmpfs的根本原因。
    关于tmpfs文件系统请参考linux内核文档:
    kernel/Documentation/filesystems/tmpfs.txt
原创粉丝点击