本文基本是前面《众浏览器对IE的围攻--UNIX哲学的应用》的续,基本宗旨在那篇文章中已经提及,但是可能不是很透彻,因此本文加以补充。
我用的软件基本上都是绿色的,我十分讨厌所谓的“安装”,这个安装术语也许是因windows兴起的,windows的目录简直乱极了,你看看 c:/windows/以及c:/windows/system32里面的内容,dll,exe,log,目录,简直应有尽有,琳琅满目,再看看 linux的/bin,/lib,/home等目录,十分清晰,微软难道故意把事情搞乱,不想让人们看到它的真实面目吗?整个系统就好像一锅烩菜,你想扩 展都难,因为你根本不知道从哪里开始,你把可执行文件都放到系统目录下一定没错,但是等你想删除的时候,可能就需要费一番脑筋了,事实上,windows 根本就不是让你扩展的,为什么?因为它是商业的,你想要什么扩展功能,拿钱,微软帮你扩展,给你打补丁,不信你看看它的补丁文件名字,够乱了吧。
linux就不是这样的,它的内核是开放的,这个内核仅仅是个内核,并没有实际完成任何有用的功能,它提供的仅仅是接口,你想实现具体功能,内核开发社区可不管,他们只提供上好的木材,不管卖家具,你把它们当柴火烧或是做成顶级家具,内核开发社区根本不管,这就提供给所有人一种自由,你可以无限扩展,内核 和用户空间程序互不干涉,只要通过内核系统调用接口的组合可以实现的功能,不管这种组合多么复杂,哪怕内核可以轻而易举直接实现,内核也不应该提供该项功能,这样的话,内核和用户空间耦合度将大大加强,内核不过问用户空间的原则也不允许内核直接提供用户功能,因为内核根本不知道如何提供,它是不过问用户空 间的。因此,所谓内核就是提供正交的,基本接口的一个实体。上述的讨论当然有一个限度,当然不是绝对的。
linux的上述性格使得各大linux发行版百家争鸣,百花齐放,Debian的特性可能是SuSe和Red Hat所没有的,这是好事还是坏事是有争议的,思维上可以尽情发挥,不受任何限制,但是很难形成统一的标准,不过我认为统一的标准除了对商业有利外,几乎没有什么别的好处,纵观历史,不管古代中国还是古希腊,百家争鸣的时代都是最发达的时代,可以考证一下中国的春秋战国和西方的苏格拉底时代。对于商业的操 作系统,几乎不存在百家争鸣,而且内核不可能不和用户空间交互,并且这种交互是高度耦合的,因为不管是用户空间还是内核都是他家的产品,别家是不能干涉,不能扩展的,因此为了效率,可能就会直接在内核实现用户的功能,这就是为何windows平台在NT3.5后将GUI元素塞进了内核空间,当然,蓝屏不一 定每次都是因为GUI,但是不能否认一个界面死锁就能使系统挂掉...
仔细想想,linux的方式是独创的吗?当然不是,老牌的UNIX就总结出了这个道理,主要的思想就是低度耦合的模块之间互相配合形成一个庞大的系统,微 内核的思想基本也是这样,只不过它把模块更加细化了,linux内核虽然是宏内核,但是涉及思想却是模块化的。我们整天都在使用的软件其实也有很多基于这 种思想设计,开发人员比较熟悉的比如Eclipse,它几乎就是微内核思想在用户空间实现的一个经典案例,Eclipse由一个微小的内核和很多插件组成,这个内核只提供了一些基本的运行时支撑功能,其余的都是插件,它的思想精髓就是“一切皆插件”,插件中还定义了扩展点接口,这么说来,Eclipse 是可以被无限制的扩展的,因此它的强大震撼了整个软件业,它在出世的时候可能面临着微软的Visual Studio这个强大的对手,可是你看看它那强大的扩展功能和世界上那么多狂热的爱好者,Eclipse可以轻而易举的超越Visual Studio,更不用说它的另一个对手Sun的NetBean了。我现在用Eclipse的Tomcat插件和企业Bean插件开发一个企业级应用程序,感觉很轻松,使用它的难度在于初始配置,只要你能用它开发出一个Hello World,我可以保证,以后它就是你的了,Eclipse是一个很难驯服但是一旦驯服以后很乖很听话的平台,插件及其丰富,安装十分简单,我十分喜欢。
如果你不是开发人员而且你在用IE浏览器的话,我劝你赶快换成Firefox浏览器,Firefox也是和Eclipse一样,一个最基本的核心加上很多 插件提供附加功能,所谓最基本的核心功能就是HTML的解析和显示,Http请求的发送和接收,甚至Firefox将样式表都想做成插件。这不像IE那 样,不但更新慢,bug多,而且庞大,繁杂,一个IE的问题就可以引起系统崩溃,简直不可忍受,用Firefox,你可以搜到很多很好玩的插件,不妨试试,赶快卸了IE吧,记住,光删除Program Files夹下的IE没有用,你得先将c:/windows/system32/dllcache/夹下的IE删除,因为该文件夹缓存了重要的文件或者 库,ie也算是个重要的文件,真可笑,一旦系统检测到你删除了重要的文件,它会从dllcahce中复制一份还原到你删除的位置,因此你要先删除 dllcache里面的IE,然后你再删除Program Files下的IE,至于删不掉的情况就不说了,强删文件的阴招多了。windows下干个事情麻烦的要死,索性装linux吧,你把内核删了也没有人拦 着。
上面说了一些闲话,现在总结一下,Eclipse的插件和linux的发行版包括Firefox的插件有着相同的特点,都是可以无限扩展的,都是百家争鸣百花齐放的,背后的UNIX思想真是个伟大的思想啊,强烈推荐阅读《UNIX编程艺术》这本书,不但搞IT的要看,任何脑力劳动者都值得阅读,特别是搞设 计的。
linux发行版与eclipse插件
最新推荐文章于 2024-11-01 18:23:17 发布