linux文件系统分为4个层面:用户空间程序、系统调用、内核虚拟文件系统以及实际文件系统;本系列文章只涉及用户空间程序的操作及使用方法,旨在掌握linux文件系统的常用命令,至于文件系统的系统调用和内核实现方法等内容并不涉及。...
分类:
系统相关 时间:
2014-11-09 20:54:30
阅读次数:
206
如果一个用户空间中的应用程序(假设是用c语言编写的)要读取存放在remote scsi磁盘上面的某个文件,那么这个应用程序就需要使用c库的程序,然后调用内核提供的系统调用read(),系统调用会访问VFS,也就是虚拟文件系统,那么虚拟文件系统是什么呢?虚拟文件系统其实是文件系统的抽象层(复用代码的设计思想?),然后由VFS 选择那个正确的文件系统,因为甚至有的文件系统就是网络文件系统呢。然后到了真正的文件系统,文件系统是一个组织文件在磁盘上面存放的管理系统,由文件系统找到文件对应的块。再然后到了块设备层。文...
分类:
其他好文 时间:
2014-11-07 11:15:53
阅读次数:
166
通过/proc虚拟文件系统读取MTD分区表:cat /proc/mtd
mtd .name = raspi, .size = 0x00400000 (4M) .erasesize = 0x00010000 (64K) .numeraseregions = 0
Creating 6 MTD partitions on "raspi":
0x00000000-0x00400000 : "AL...
分类:
系统相关 时间:
2014-10-29 17:11:18
阅读次数:
2045
参考《Linux内核设计与实现》
虚拟文件系统(VFS)是linux内核和具体I/O设备之间的封装的一层共通访问接口,通过这层接口,linux内核可以以同一的方式访问各种I/O设备。
虚拟文件系统本身是linux内核的一部分,是纯软件的东西,并不需要任何硬件的支持。
1. 虚拟文件系统的作用
虚拟文件系统(VFS)是linux内核和存储设备之间的抽象层,主要有以下好处。...
分类:
系统相关 时间:
2014-10-27 10:59:52
阅读次数:
384
1dup函数和dup2函数
#include
int dup(intoldfd);
int dup2(intoldfd, int newfd);
dup和dup2都可用来复制一个现存的文件描述符,使两个文件描述符指向同一个file结构体。如果两个文件描述符指向同一个file结构体,File
Status Flag和读写位置只保存一份在file结构体...
分类:
系统相关 时间:
2014-09-16 00:23:49
阅读次数:
254
在Linux的发行版本中,都存在一个/proc/目录,有的也称它为Proc文件系统。在 /proc 虚拟文件系统中存在一些可调节的内核参数。这个文件系统中的每个文件都表示一个或多个参数,它们可以通过 cat 工具进行读取,或使用 echo 命令进行修改。下面给出了几个可调节的参数是关于Linux T...
分类:
系统相关 时间:
2014-09-02 15:41:25
阅读次数:
230
一:
什么是文件系统,详见:http://zh.wikipedia.org/zh/%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F
其实一句话就是管理这块文件的机制(组织方式,数据结构之类...)
Linux系统中存在很多的文件系统,例如常见的ext2,ext3,ext4,sysfs,rootfs,proc...很多很多。。。我们知道每个文件系统是独立的,有自己的组织...
分类:
系统相关 时间:
2014-08-31 18:42:21
阅读次数:
439
一、proc文件系统传统意义上的文件系统是用于块设备上信息的存储,/proc这个目录是一个虚拟文件系统,它放置的数据都是在内存当中,所以这个目录本身不占用任何硬盘空间。主要包含如下系统信息:内存管理系统进程特征数据文件系统设备驱动程序系统总线电源管理终端系统控制参数用 户和应用程序可以通过proc得...
分类:
移动开发 时间:
2014-08-31 06:03:30
阅读次数:
308
一、proc文件系统传统意义上的文件系统是用于块设备上信息的存储,/proc这个目录是一个虚拟文件系统,它放置的数据都是在内存当中,所以这个目录本身不占用任何硬盘空间。主要包含如下系统信息:内存管理系统进程特征数据文件系统设备驱动程序系统总线电源管理终端系统控制参数用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取p...
分类:
移动开发 时间:
2014-08-30 11:18:39
阅读次数:
269