zoukankan      html  css  js  c++  java
  • 解析Linux中的VFS文件系统之文件系统的来源与简介(一)

    最近挂载了N多的文件系统,大致了不同文件系统的相应特性及挂载方式,却还是对Linux的文件系统没有从源码方面去了解。不求甚解确实不好不好。

    于是借鉴一些大牛的博客及自己的理解,总结了博客系列:

    一、VFS是什么:

    VFS是Linux中的一个虚拟文件文件系统,也称为虚拟文件系统交换层(Virtual Filesystem Switch),是一种软件机制。它为应用程序员提供一层抽象,屏蔽底层各种文件系统的差异。如下图所示:

     

    引入文件系统的目的是:为了屏蔽各种文件系统的差异

    (1)VFS对实际文件系统进行抽象,采用统一的文件系统向用户提供相应的一组统一的标准的文件操作接口(open,read,close,select,poll等);

    (2)通过系统调用到VFS到实际文件系统的操作。

    二、文件系统种类:

    (1)基于磁盘的文件系统;

    (2)网络文件系统(NFS);

    (3)伪文件系统(sysfs、proc);

    VFS 目录树结构:

    Reference:

    https://www.ibm.com/developerworks/cn/linux/l-vfs/

    在链接中,文章选用的是Linux2.4.20,我选择Linux3.4.2来分析源码。

    分析过程如上文链接所讲:

    这篇文章不拘泥于细节,是一篇极好的文章。我将详细的讲解代码,并从代码细节处理。

  • 相关阅读:
    Jenkins安装2
    11月14 vagrant 虚拟机连接
    11月13 ssh 和 netstat
    Jenkins安装
    11月12号 springboot1.5 引入redis
    11月12号 用户登录输入密码错误达到指定次数后,锁定账户 004
    js模式-观察者模式
    立即执行函数
    vue 获取数据
    在登陆退出时候使用Vuex
  • 原文地址:https://www.cnblogs.com/linhaostudy/p/7397024.html
Copyright © 2011-2022 走看看