[其它]问两个比较独特的问题,高手看看

为当前最终发行版之前的所有版本提供支持
回复
mystlynx
帖子: 71
注册时间: 2006-10-28 8:19
送出感谢: 0
接收感谢: 0

[其它]问两个比较独特的问题,高手看看

#1

帖子 mystlynx » 2007-01-10 11:11

1、Ubuntu是否可以开机时自动检查硬盘上的所有文件系统,自动以合适的方式挂载,而不用去手动编辑fstab?

这一点我觉得Mac OS X做得很好,它不仅是开机时能自动检测文件系统,自动以合适的方式挂载,而且在系统启动之前,它的CHAIN0引导器(类似于GRUB)就能自动检测到系统上的所有分区,并且给出列表让你选,Windows和Linux它都认识。唯一的缺点就是还不支持SATA硬盘,所以SATA硬盘上的分区,CHAIN0检测不到。

Mac OS X系统启动后,会自动把所有能检测到的分区挂载到/Volumes下,挂载点就是分区的卷标名,比如某个NTFS分区卷标是“WINC”,那么这个分区会挂载到/Volumes/WINC(当然Mac OS X对NTFS也是只读的,对FAT可写)。如果分区没有卷标名,Mac OS X会自动挂载到NO NAME1或者untitled1这样的位置。最重要的是,即使你的分区改变了,Mac OS X也能自动检测并自动挂载。如果你新增或删除了一个分区,或者改变了分区的格式,Mac OS X都能自动处理。

反观Linux,GRUB必须通过修改menu.lst来加入新的引导选项。而文件系统的自动挂载,也要通过修改fstab来实现。比起Mac OS X的做法,这实在是不够智能,而且太麻烦了。

2、Ubuntu是否可以开机时自动检测硬件,并且自动按需加载合适的驱动程序?

再以Mac OS X为例,用VMware安装到硬盘分区的Mac OS X(目前最流行的安装方式),只要你的硬件兼容,那么你既可以在VMware里运行,又可以实体启动,而且只要你的驱动程序没问题,那么不管是实体运行,还是在VMware里运行(在VMware里运行基本不需要装驱动),你的硬件都可以正常工作。

再来看Linux。我用VMware将Ubuntu 6.10 Desktop安装到硬盘分区,重启之后实体启动,进不了X。但是用置顶贴里的引导文件实体安装Ubuntu,却可以进X。

比较之下,还是Mac OS X比较先进,同一个系统,既能实体运行,不出问题,又能在VMware里运行,也没有问题,而且你不需要改任何东西。目前我还没有发现其他的操作系统能做到这一点,Windows也做不到。

Mac OS X这么优秀,我觉得关键在于它的驱动程序模块化做得很好。内核与驱动程序之间依赖相对较小。Mac OS X的驱动程序是以kext(Kernel Extention)的形式存在的,驱动程序,就是内核的扩展。打个比方,内核就像Firefox,而kext就像Firefox的扩展。不同的是,kext是按需加载,所有的kext驱动程序都放在硬盘里,只要内核检测到某种硬件,那么它就会去加载相应的驱动程序。不像Windows,驱动程序需要安装,和内核联系那么紧密,Windows号称Plug and Play,却不是真正的PnP。Mac OS X下怎么使用驱动程序呢?你只要把合适的kext包复制到/System/Library/Extensions文件夹里,再赋予合适的访问权限,就行了。你甚至可以随意替换、删除kext驱动程序,即使你的机器已经加载了这个驱动程序,你都可以随时把它丢到废纸篓里面去,再换一个(不过你还是要保证下次系统启动的时候能加载正确的驱动程序,否则你的硬件可能没法工作)。Mac OS X除了系统启动时可以自动加载驱动程序,还可以手动加载驱动程序,只要执行一个加载的命令,你的硬件马上就可以工作了,甚至不需要重启系统。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#2

帖子 eexpress » 2007-01-10 12:29

基本都是自动挂载。大部分硬件是自动检测的。比如,换了网卡,声卡,而显卡如果换了,会缺省使用一种通用的驱动。只是显卡的这部分,因为驱动和厂家关系太紧密,作得不是很好。
● 鸣学
回复

回到 “老旧版本支持”