首页 > 其他 > 详细

漫谈文件系统

时间:2019-05-03 21:04:10      阅读:145      评论:0      收藏:0      [点我收藏+]

一,机械硬盘

技术分享图片

二,文件和目录

1,解释

c:确定在哪个柱面

h:确定在哪个磁头

s:确定在哪个扇区

先找到柱面,然后找到磁头(磁头决定哪个盘片),最后确定在哪个扇区。

按照(C,H,S)将扇区形成一维扇区数组,数组索引就是扇区编号。

2,用户是无法直接访问扇区的,操作系统把扇区抽象成文件。(文件是我们操作硬盘的最小单位)

技术分享图片

元数据:描述数据的数据

3,文件系统的实现

3.1,文件在内存中的结构技术分享图片

每次打开一个文件,需要操作系统调用,系统调用需要查看一个表(系统范围的打开文件表 -- ->操作系统打开哪些文件,看一看有没有别的系统打开了)

对于每个进程来说,它维护了一张表,里面记录了这个进程打开的文件。每个文件有一个索引号,索引号指向了系统范围打开的文件表。

(每个进程打开的文件表中的索引号,在Linux中叫文件描述符(fd),在window中叫文件句柄)

如果一个进程要打开的文件,在别的进程中没有被打开,就走上面的(a)过程。

如果一个进程要打开的文件,在别的进程中已经被打开,就走上面的(b)过程。

 

3.2,文件在磁盘中的结构

技术分享图片

4,文件的存储

4.1,连续存储(想象成数组)

技术分享图片

优点:顺序访问速度非常快,

缺点:出现内存碎片

4.2,链式存储(想象成链表)

技术分享图片

缺点:随机访问慢

 

4.3,索引存储

技术分享图片

如果文件比较大,一个节点就放不下了,引入间接块。

 技术分享图片

5,目录

技术分享图片

 

漫谈文件系统

原文:https://www.cnblogs.com/inspred/p/10806246.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!