翻译一篇小文章,练练英语翻译^_^
本文原文地址:http://geekblog.oneandoneis2.org/index.php/2006/08/17/why_doesn_t_linux_need_defragmenting
译者:jjmmma@gmail.com
使用 Linux 的人经常会问这个问题:为什么 Linux 文件系统(filesystem)不需要碎片整理(defragment)? 以下我尝试用一个简单的,非技术的解答来会回答为什么有些文件系统会比另一些文件系统产生更多的碎片(fragment)。为了避免囫囵吞枣的使用 艰涩的技术方法来解释,我使用 ASCII 图形解释,一个 ASCII 图片抵万言^_^ 以下是我将用来解释整个问题的图形:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
n 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
此图表示了一个(极小)的硬盘,此时硬盘还是完全空的——我用全部的零来表示。顶部和左面的 a 到 z 格子用来表示每一字节(byte)的数据:左上角是 aa,右上角是 za,左下角是 az。你一定明白了吧,我想信……
我 们开始描述一类大多数用户熟悉的简单文件系统:一个需要经常的碎片整理的文件系统。这个文件系统就是 Windows 和 Linux 都在使用过的 FAT(File Allocation Table 文件分配表)文件系统,如果仅仅作为 USB 闪盘的文件系统,那么这是一个很重要的文件系统,但是不幸的是,它会产生很多的碎片。
如果在我们的文件系统添加一个文件,这时候,硬盘看起来是这样的:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t a e l e 0 0 0 0 0 0 0 0 0 0
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e H e l l o , _ w o r l d 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
(为了表示简明,忽略 g-z 空行)
解 释一下我们看到了什么:硬盘的前四行分配给了目录表(Table of contents)即 TOC。TOC 中保存了文件系统中所有文件的位置。在以上例子中,TOC 中包含了一个文件,它的名字是“hello.txt”,并且说明了,这个文件能在 ae 和 le 之间找到。我们找到这个地址,就能看到文件的内容“Hello, world”。
至此,一切都很好,现在,我们添加另外一个文件:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t a e l e b y e . t x t m e z
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e H e l l o , _ w o r l d G o o d b y e , _ w o r l d
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
如你所看到的,第二个文件紧接着添加在第一个文件之后,这里的想法是这样,尽量把你的文件存放在一起,那样访问读取它们会很快很容易:硬盘的磁头是硬盘上移动最慢的部分,磁头移动越少,读写文件的速度就越快。
但是在我们决定编辑我们创建的第一个文件的时候,问题就来了。比如说,为了使我们的“Hello”看起来更有激情,我们想在后面添加一个感叹号,这时候我们 就遇到了麻烦:因为“bye.txt”占据了地方,文件系统中没有足够的空间添加感叹号。这时候,我们只有两种选择,但没有一种是理想的:
1、删除原先的文件,编辑完后添加在第二个文件结尾。
2、将第一个文件分拆开,这个文件就存放在两个不同的地方。
图例说明:第一种方案:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t a f n f b y e . t x t m e z
b e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e 0 0 0 0 0 0 0 0 0 0 0 0 G o o d b y e , _ w o r l d
f H e l l o , _ w o r l d ! ! 0 0 0 0 0 0 0 0 0 0 0 0
第二种方案:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t a e l e a f b f b y e . t x
b t m e z e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e H e l l o , _ w o r l d G o o d b y e , _ w o r l d
f ! ! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
这就是 FAT 文件系统需要经常碎片整理的原因。所有文件都是紧接着前一个文件存放,因此当一个文件增大的时候,它被分块放置,而当一个文件减小的时候,留下了一个空缺。很快,硬盘上就留下了很多的碎片和空缺,性能就降低了。
然 后再考虑 Linux。Linux 是另外一种哲学。如果你只有一个用户,访问文件都是按照它们创建的顺序一个一个访问,那么 Windows 的文件系统是很理想的。而 Linux 则总是面向多用户系统:它要能保证在同一个时间有一个以上的用户试图访问一个以上的文件。所以 Linux 使用了另外一种方式。当我们在 Linux 的文件系统上创建了“hello.txt”时,硬盘看起来是这样的:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t h n s n 0 0 0 0 0 0 0 0 0 0
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
n 0 0 0 0 0 0 0 H e l l o , _ w o r l d 0 0 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
然后添加了另一个文件:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t h n s n b y e . t x t d u q
b u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
n 0 0 0 0 0 0 0 H e l l o , _ w o r l d 0 0 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 G o o d b y e , _ w o r l d 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
这种方式的聪明之处在于,硬盘磁头放在磁盘中间位置,那么平均来看,大多数的文件均匀的分布在磁头附近:这就是均衡的工作。
另外,当我们在这个文件系统添加感叹号的时候,什么问题会发生?
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t h n u n b y e . t x t d u q
b u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 T O C
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
n 0 0 0 0 0 0 0 H e l l o , _ w o r l d ! ! 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 G o o d b y e , _ w o r l d 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
答对了,什么问题都没有。
Windows 试图将文件放在最接近硬盘开始的地方,因此当文件变大的时候由于没有足够的扩展空间,需要时常的产生碎片文件。
而 Linux 把文件分散在整个硬盘上,所以当文件大小改变的时候会有足够的空间。又由于有足够的空间来移动,它也能够动态的改变文件位置。在 Windows 的文件系统上进行磁盘碎片整理是一件很费时间的事情,因此在正常运行时在后台整理是不现实的。
碎片整理只有在 Linux 文件系统满得不再有足够的空间分块存放大文件时。当磁盘不到 80% 满的情况下,碎片整理都是不需要的。
另外也需要注意一点,尽管操作系统根据磁盘上文件的几何分布认为一个硬盘是完全碎片整理过的,碎片可能仍然存在:一个典型的硬盘有很多个磁盘,即盘 片。就那我们的例子来看,比如我们的硬盘事实上有两个盘片,分别是从 aa 到 zm 作为第一个,另外一个从 an 到 zz:
a b c d e f g h i j k l m n o p q r s t u v w x y z
a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
a b c d e f g h i j k l m n o p q r s t u v w x y z
n 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
下面这样的文件分布将会被认为是非碎片的,因为它连续分分在 m 行到 n 行。但是它忽略了磁盘磁头要从盘面的最后面移动到盘面的最前面才能读取这个文件。
a b c d e f g h i j k l m n o p q r s t u v w x y z
a T O C h e l l o . t x t r m e n 0 0 0 0 0 0 0 0 0 0
b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
i 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
j 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
k 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
l 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
m 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 H e l l o , _ w o
a b c d e f g h i j k l m n o p q r s t u v w x y z
n r l d ! ! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
u 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
我希望这篇文章能够帮助你理解为什么 Linux 系统上不需要碎片整理工具。如果你还是不明白,我也会一直愿意提供建议。
参考至:http://hi.baidu.com/jjmmma/blog/item/15e39e3dd125a501bba1677a.html
如有错误,欢迎指正
邮箱:czmcj@163.com
- 浏览: 4406897 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (634)
- Oracle日常管理 (142)
- Oracle体系架构 (45)
- Oracle Tuning (52)
- Oracle故障诊断 (35)
- RAC/DG/OGG (64)
- Oracle11g New Features (48)
- DataWarehouse (15)
- SQL, PL/SQL (14)
- DB2日常管理 (9)
- Weblogic (11)
- Shell (19)
- AIX (12)
- Linux/Unix高可用性 (11)
- Linux/Unix日常管理 (66)
- Linux桌面应用 (37)
- Windows (2)
- 生活和工作 (13)
- 私人记事 (0)
- Python (9)
- CBO (15)
- Cognos (2)
- ORACLE 12c New Feature (2)
- PL/SQL (2)
- SQL (1)
- C++ (2)
- Hadoop大数据 (5)
- 机器学习 (3)
- 非技术 (1)
最新评论
-
di1984HIT:
xuexilee!!!
Oracle 11g R2 RAC高可用连接特性 – SCAN详解 -
aneyes123:
谢谢非常有用那
PL/SQL的存储过程和函数(原创) -
jcjcjc:
写的很详细
Oracle中Hint深入理解(原创) -
di1984HIT:
学习了,学习了
Linux NTP配置详解 (Network Time Protocol) -
avalonzst:
大写的赞..
AIX内存概述(原创)
发表评论
-
Linux OOM机制介绍
2018-06-06 11:27 3459Linux系统运行过程中,有时候会在message中看 ... -
Linux启动过程--从引导说起
2016-09-23 13:49 1175Linux的引导过程是一个用来初始化系统的程序。它包含了在打 ... -
基于案例学SQL优化第5周脚本
2015-04-12 19:35 0===============BEGIN=========== ... -
重启linux network服务/etc/resolv.conf信息丢失的解决方案
2014-11-13 13:38 3109修改/etc/resolv.conf,修改后重启服务 ser ... -
linux sudo 命令
2014-11-04 15:01 1331“Sudo”是Unix/Linux平台上的一个非常有用的工具 ... -
linux sudo,su和打开终端速度很慢
2014-11-04 09:42 4276一、症状sudo指令执行速度很慢,例如:sudo -u ro ... -
Linux NFS服务器的安装与配置
2014-10-15 00:00 1008一、NFS服务简介 N ... -
DISPLAY变量和xhost(原创)
2014-10-14 16:58 60569DISPLAY 在Linux/Unix类操作系统上, D ... -
Linux NTP配置详解 (Network Time Protocol)
2014-10-02 21:49 18493Network Time Protocol (NTP) ... -
Linux下DNS服务器的设置
2014-10-02 21:43 1463环境:要设的DNS机子 ... -
nslookup工具的使用方法
2014-10-02 21:35 6918配置好DNS服务器,添加 ... -
ntpd与ntpdate的区别
2014-10-02 17:57 1141之前配置ntpd的时候搜到一句话,印象很深刻,也觉得很有标题 ... -
认识/etc/fstab和/etc/mtab文件
2014-09-20 12:27 3161fstab fs tab(描述 各 ... -
扩展Linux swap分区 两种方法
2014-09-16 17:23 1541先来查询一下系统的swap [root@localhost ... -
vim切换tab标签快捷键
2014-06-22 17:16 19480这几天在学习VIM,在WIN7下装了GVIM,在折腾好配置文 ... -
如何看linux是32位还是64位
2014-04-27 14:09 1673查看linux机器是32位还是64位的方法:方法一:file ... -
iSCSI的配置(target/initiator)
2014-04-27 13:45 54479iSCSI 是一种 SAN的设备而 SAN的设备主要是提供 ... -
linux kudzu作用与操作方法(原创)
2013-08-29 22:03 2867概述kudzu是在linux系统启动时用来检测硬件的,一般在 ... -
Linux下获取详细硬件信息的工具:Dmidecode命令详解
2013-08-29 21:52 2538Dmidecode 这款软件允许 ... -
DAS,NAS,SAN和ISCSI存储架构介绍(原创)
2013-06-23 10:22 16120DASDAS是Direct Attached Stor ...
相关推荐
Linux 磁盘碎片快速清理工具 Kleandisk Kleandisk 是一个高效的磁盘清理工具,可以快速清理 Linux 系统中的磁盘碎片,以优化系统性能。下面是 Kleandisk 工具的详细介绍。 1. 磁盘碎片的危害 磁盘碎片是指文件...
Linux操作系统之所以不需要像Windows那样定期进行碎片整理,其原因主要归结于Linux文件系统的独特设计。在Windows系统中,由于FAT和NTFS文件系统的工作方式,文件可能会被分散存储在硬盘的不同位置,导致碎片的产生...
综上所述,Linux文件系统的设计使得其在大多数情况下不需要像Windows系统那样频繁地进行磁盘碎片整理。通过采用智能的分配策略和高效的数据结构,Linux能够在保证高性能的同时降低磁盘碎片的影响。对于特定的应用...
1. 什么是磁盘碎片 2. 磁盘碎片产生的主要原因 3. 磁盘碎片的危害 4.为什么Linux不需要磁盘碎片整理 1.在inode区域中找到对应文件 2.得出文
总的来说,Linux的文件系统设计使得磁盘碎片对系统性能的影响远小于Windows,一般情况下并不需要专门的磁盘碎片整理工具。当然,对于特定场景,如服务器系统处理大量小文件或旧的ext2文件系统,可能存在碎片问题,...
Linux 操作系统中,磁盘碎片化是一个普遍存在的问题,不论 Linux 文件系统采用什么类型的文件格式(ext3、JFS、xFS、ReiserFS),使用什么类型的硬盘(IDE、SCSI),随着时间的推移,文件系统都会趋向于碎片化。...
7. 使用碎片整理工具:虽然Linux系统没有内置的碎片整理工具,但有一些第三方工具,如fsck、e2defrag等,可以帮助分析和整理文件系统碎片。 总之,尽管Linux系统的碎片化问题不像Windows那么突出,但通过以上策略的...
尽管这个程序可以作为一个学习资源,但需要注意的是,现代操作系统如Windows、macOS和Linux通常都有内置的磁盘碎片整理工具,这些工具可能更加高效且适应系统。对于个人用户而言,定期进行磁盘碎片整理的需求已不如...
磁盘碎片整理.exe
其次,针对磁盘碎片问题,Linux并不像Windows那样提供内置的碎片整理工具。然而,一个有效的解决方法是备份数据,重新格式化分区,再从备份恢复文件。这种方法确保新文件在写入时会被连续存储,从而避免碎片化。对于...
FATDefrag将是第一个用于Linux的FAT碎片整理工具。 我将支持FAT12 / 16/32文件系统。
2. 整理磁盘碎片:Linux下的碎片整理不同于Windows,最彻底的方法是进行全备份,然后重新格式化分区并恢复数据。这可以确保新文件被连续写入,减少碎片产生。对于频繁变动的分区,如/home,此方法尤其有效。 3. ...
综上所述,优化Linux服务器硬盘性能涉及清理磁盘、整理碎片、升级硬件以及选择高性能磁盘等多个方面。通过这些方法,可以有效地提升服务器的运行效率,减少延迟,保证服务的稳定性和响应速度。在实际操作中,应根据...
它还实现了内存分页和内存碎片整理,以优化内存使用。 4. **文件系统**:Linux内核支持多种文件系统,如EXT4、XFS、Btrfs等。文件系统管理磁盘上的数据组织,实现文件的创建、读写和删除等操作,并提供统一的接口供...
2. 整理磁盘碎片:Linux的磁盘碎片整理方法与Windows系统不同。Linux中最好的方式是备份数据,然后重新格式化分区,并从备份恢复。这样在恢复文件时,文件会被写入连续的块中,避免碎片化。对于不经常改变的数据分区...
【标题】"生物信息学之玩转Linux教程.txt打包整理.zip"揭示了这是一份针对生物信息学领域,专门讲解如何在Linux环境下进行工作和学习的教程。在生物信息学中,由于大量的数据分析和计算任务,Linux系统因其高效、...
7. **内存碎片**:长期运行的系统可能会出现内存碎片问题,分为内部碎片(分配给进程的内存空间没有完全使用)和外部碎片(可用的内存块不足以满足新的分配请求)。Linux通过合理的内存分配策略来减少碎片。 8. **...
5. 定期碎片整理:虽然Linux文件系统通常比Windows更少受到碎片问题的影响,但在长期使用后,还是有必要进行碎片整理,以优化文件和目录的存储布局。 6. 优化挂载选项:在挂载文件系统时,可以调整挂载选项(如...
在实际的实现中,kmem_cache_create的参数flags可指定为SLAB_HWCACHE_ALIGN,这样Linux会根据对象大小自动选择一个合适的对齐方式,以提升性能。 此外,对于初始化和销毁对象缓存,kmem_cache_init函数用于静态创建...
而Btrfs则提供了数据复制、在线碎片整理、快照等高级功能,适合于大规模存储系统。 制作文件系统的第一步通常是创建分区。在Linux系统中,可以使用fdisk、parted等工具来对硬盘进行分区操作。在分区的过程中,需要...