介绍一下linux文件系统分配策略


Posted in 面试题 onNovember 17, 2012
块分配( block allocation ) 和 扩展分配 ( extent allocation )
块分配:磁盘上的文件块根据需要分配给文件,避免了存储空间的浪费。但当文件扩充时,会造成文件中文件块的不连续,从而导致过多的磁盘寻道时间。
每一次文件扩展时,块分配算法就需要写入文件块的结构信息,也就是 meta-dada 。meta-data总是与文件一起写入存储设备,改变文件的操作要等到所有meta-data的操作都完成后才能进行,
因此,meta-data的操作会明显降低整个文件系统的性能。
扩展分配: 文件创建时,一次性分配一连串连续的块,当文件扩展时,也一次分配很多块。meta-data在文件创建时写入,当文件大小没有超过所有已分配文件块大小时,就不用写入meta-data,直到需要再分配文件块的时候。
扩展分配采用成组分配块的方式,减少了SCSI设备写数据的时间,在读取顺序文件时具有良好的性能,但随机读取文件时,就和块分配类似了。
文件块的组或块簇 ( block cluster) 的大小是在编译时确定的。簇的大小对文件系统的性能有很大的影响。
注:meta-data 元信息:和文件有关的信息,比如权限、所有者以及创建、访问或更改时间等。

Tags in this post...

面试题 相关文章推荐
在C语言中实现抽象数据类型什么方法最好
Jun 26 面试题
extern在函数声明中是什么意思
Jan 19 面试题
介绍一下sql server的安全性
Aug 10 面试题
上海某公司.net方向笔试题
Sep 14 面试题
网络体系结构及协议的定义
Mar 13 面试题
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
Nov 10 面试题
如何进行Linux分区优化
Feb 12 面试题
一些Solaris面试题
Mar 22 面试题
Why do we need Unit test
Jan 03 面试题
Overload和Override的区别
Sep 02 面试题
举例说明类变量和实例变量的区别
Jun 30 面试题
设置器与访问器的定义以及各自特点
Jan 08 面试题
几个Shell Script面试题
Apr 18 #面试题
介绍一下write命令
Aug 10 #面试题
Linux操作面试题
Feb 11 #面试题
几个Linux面试题笔试题
Aug 01 #面试题
LINUX下线程,GDI类的解释
Apr 17 #面试题
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
Jul 21 #面试题
下列程序在32位linux或unix中的结果是什么
Jan 26 #面试题
You might like
php实现memcache缓存示例讲解
2013/12/04 PHP
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
Smarty foreach控制循环次数的一些方法
2015/07/01 PHP
PHP超全局数组(Superglobals)介绍
2015/07/01 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
2016/01/03 PHP
PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
2016/09/19 PHP
PHP 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
基于jquery tab切换(防止页面刷新)
2012/05/23 Javascript
javascript表单验证大全
2015/08/12 Javascript
vue.js 表格分页ajax 异步加载数据
2016/10/18 Javascript
bootstrap table 数据表格行内修改的实现代码
2017/02/13 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
Vue自定义事件(详解)
2017/08/19 Javascript
react中的ajax封装实例详解
2017/10/17 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
JavaScript对象的浅拷贝与深拷贝实例分析
2018/07/25 Javascript
Webpack中loader打包各种文件的方法实例
2019/09/03 Javascript
Node.js创建一个Express服务的方法详解
2020/01/06 Javascript
微信小程序canvas动态时钟
2020/10/22 Javascript
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
Python open()文件处理使用介绍
2014/11/30 Python
列举Python中吸引人的一些特性
2015/04/09 Python
Python网络爬虫实例讲解
2016/04/28 Python
简单谈谈python的反射机制
2016/06/28 Python
教你用python3根据关键词爬取百度百科的内容
2016/08/18 Python
Python实现在线暴力破解邮箱账号密码功能示例【测试可用】
2017/09/06 Python
详解用python实现简单的遗传算法
2018/01/02 Python
PyTorch上搭建简单神经网络实现回归和分类的示例
2018/04/28 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
全球航班旅行搜索网站:Cheapflights
2017/05/19 全球购物
英国领先的游戏零售商:GAME
2019/09/24 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
建筑专业毕业生求职信
2014/09/30 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书