第219章 重要事情(2 / 4)

超脑黑客 疯狂小强 3399 字 15天前

minix系统在文件处理方面的效率的确有些慢了,刚开始的时候还感觉不到,但是在他编译系统的时候,就极其明显了,文件一多,搜索查找以及读取文件的效率就变得极为缓慢。在这点上,还比不上dos系统。

minix的文件系统是模仿unix的文件系统而设计的,其数据结构整体上和unix文件系统大致相同,大致也可分为引导块、超块、柱面、节点等。

但是作者安德鲁这个系统本身是用来作为教学用的,所以在设计的时候,就考虑到要让学生能够比较容易理解,将其中的一些复杂实现就省略了,只保留了其骨架,进行适当修改之后,能够让其正常运转,并没有经过大量文件存储方面的性能测试。

当磁盘中文件比较少的时候,根本感觉不到其中的差异。

但是,linus在编写linux操作系统的时候,代码虽然不是很多,也就一万两千行左右,但是这一万两千行代码并不是只在一个文件里面,而是分布在多大几十个文件和上十个目录当中。

在编译系统的时候,编译器会按照编译索引文件makefile来按照顺序对这些源代码一个一个地查找,并链接起来,然后再统一进行编译。

按理说来,只有这么点文件,这个过程应该是非常快的,但是事实证明,要想将linux的v0.00版本编译出来,都至少要花费四十分钟的时间。

当初林鸿一直pkzip那么一个小软件的时候,都花费了十分钟左右的时间。

这样的效率实在太低了,要是在unix或者dos下,所花费的时间可能只有五分之一甚至十分之一。

linus于是便开始寻找到底哪里出现问题,为什么会导致编译速度如此缓慢。

举报本章错误( 无需登录 )