sys_chdir("/old");
return;
}
ROOT_DEV = new_decode_dev(real_root_dev);
mount_root();
printk(KERN_NOTICE "Trying to move old root to /initrd ... ");
error = sys_mount("/old", "/root/initrd", NULL, MS_MOVE, NULL);
if (!error)
printk("okayn");
else {
int fd = sys_open("/dev/root.old", O_RDWR, 0);
if (error == -ENOENT)
printk("/initrd does not exist. Ignored.n");
else
printk("failedn");
printk(KERN_NOTICE "Unmounting old rootn");
sys_umount("/old", MNT_DETACH);
printk(KERN_NOTICE "Trying to free ramdisk memory ... ");
if (fd
error = fd;
} else {
error = sys_ioctl(fd, BLKFLSBUF, 0);
sys_close(fd);
}
printk(!error ? "okayn" : "failedn");
}
}
先将/dev/ram0挂载,而后执行/linuxrc.等其执行完后 。切换根目录,再挂载具体的根文件系统.
到这里 。文件系统挂载的全部内容就分析完了.
五:小结
在本小节里 。分析了根文件系统的挂载流程 。并对几个虚拟根文件系统的情况做了详细的分析 。理解这部份,对我们构建linux嵌入式开发系统是很有帮助的.
推荐阅读
- 打完新冠疫苗后饮食有什么注意的地方么
- m5700-s是魅族几 m570qs是魅族什么型号
- bluedio是什么牌子 bluedio蓝牙耳机怎么连接手机
- 有哪些剧是一直在虐男主?
- 打除草剂的最佳时间,小麦封闭除草剂有哪些
- 八头鲍和六头鲍的区别 六头鲍和八头鲍哪个好
- 选择产品属性什么意思 选择商品属性什么意思
- 新冠疫苗和其它疫苗能一起打吗
- 冬至什么意义? 冬至有什么意义