Linux引论0
这个是我写的第一个系列。我不知道这个系列有多长,但是基本的会有三篇,这三篇,我会很有逻辑地去写。三篇之后,我想大家对Linux也有了个大概的了解,我可能就会想到什么就写什么。如果真的想成为一个Linux Hacker的话,持之以恒自学是绝对必不可少的(即使是在大学,Linux的课程还是很少的)。还有一点,我这个人经常跳票:p……
什么是Linux?
不知道大家当初买电脑的动机是什么(我估计大都是玩游戏:),,但是口口声声说是为了学习,我觉得玩游戏并不是什么糟糕的理由,待会你就知道原因了),但是我敢打包票,店老板给你装的操作系统绝对是微软的Windows!接着大家在Windows下面,每天点点鼠标,玩上了仙剑98柔情版(估计也是很多90后的爱情启蒙之作),飙起了极品飞车,玩着FIFA不爽就去玩实况模拟器版本……后来家里面拉了猫,连上了互联网,玩起了传奇,在形形色色的论坛里灌水。尝到电脑带来的甜头的人们似乎也可以毫不含糊地称盖茨伟大的导师伟大的舵手……对于那些不泡BBS就蛋疼的人,可能隐隐约约记得BBS上的技术高人总是在鄙视Windows,记性好的还可能记得这些高人们经常以自己使用一个叫做Linux的操作系统而为荣。
“说来说去,Linux就是一个操作系统嘛。”对,它就是一个操作系统,但是……就没有但是了……

就是当我们遇到多个程序需要一起运行的情况时,怎么办?我们现在的大多计算机都没有并行运算的功能,在某个时刻,有且只有一条命令在CPU里面执行(虽然现在有了流水线技术,但因为硬件上的瓶颈,这仍算不上真正的并行计算)。目前的做法是利用CPU的快速运算,让计算机用户感觉到这几个程序是在“同时”运行的。这在以前CPU技术还不是很发达的年代是不可能实现的。举个例子,一个老板分别让两个工人用两台不同的机器做3个工件。一段时间后,老板去查看任务进度 情况,看到第一个工人做了1个工件,第二个工人做了3个工件。在老版的印象中,两台机器走完一个制作流程的时间是一样的,所以他就认为第二个工人使用的机器能同时做三个工件。而事实上,两个人的机器都是每道流程只能做1个工件,而第二个工人的机器速度较快,在第一个工人的机器一个流程的时间内,他的机器走完了三个流程(稍后我还会举一个例子来说明如何加强老板这种错觉)。
在冯诺依曼计算体系中,任何一个将要被运行的程序都必须先加载到内存,上图展示的是(中间那条箭头在硬件上就是前端总线(bus)),内存中储存有三道程序的例子。首先需要指出的是,在计算机的世界中,我们追求的是效率最大化,计算机这个工具本身就是为了提高效率而生的。然而从图上看,貌似把三道程序同时储存在内存中运行和一道接着一道程序装进内存再运行这两种情况效率是一样的。注意,我们得出这个结论的前提是,我们假设程序是一直处于运行状态 (running)。实际情况是程序还可能处于其它状态,比如在等待(waiting)把内存中的数据写到磁盘里面,那么在这段时间里边,CPU就可以去执行另一道程序——这就是运用统筹来提高效率。Unix、Minix、Linux的诞生
关于KR和Unix,Prof. Andrew S. Tanenbaum和Minix,Linus和Linux的历史,我在此不再赘述,因为网上可以找到很多史料。我把他们写这些操作系统的目的罗列一下:年轻的KR写Unix是为了玩一个太空射击游戏;Tanenbaum写Minix是为了教学需要;Linus写Linux是为了让自己的新机子能访问学校的网络,而且Linux原本不叫Linux,叫怪胎(Freax)。 大家可以从这里得到一点事业上的启发。
为什么要用Linux?
提这个问题的时候,我已经在假设你现在用的是Windows了。Linux总免不了要和Windows比较。现实是这样的:根据今年的数据,全球TOP500的计算机有455台运行的是Linux系统。排名第一的美洲虎使用的也是Linux系统。服务器方面,Linux系统的市场份额是13%。桌面方面,Linux系统的份额是1%左右。可以看到尽管Linux是自由、开源的,但是它在桌面市场可以说是可以忽略不计。大家知道桌面市场是面向大众的,从这点来说,Linux对人民大众是一点亲和力都没有(当然,我们还不得不承认Windows在商业上的成功)。一旦到了科学计算这种高精尖领域,Linux却是大放异彩。从性能上说,Linux运行更稳定,它的内存管理更棒。大家知道Windows经常有蓝屏一说,在Linux下面却有黑屏一说。黑屏是啥,就是没电了,Linux只有在没有电的情况下才不能正常运行。
关于为什么Linux那么没有亲和力,这里有个比方。Windows就是甲壳虫,买了就能上路,厂家还帮你装了空调、音响之类的。Linux只是个V10引擎,这个引擎是制造商白送给你的,还附带设计图,使用手册。但是他没给你车壳,轮胎。这些在另一些商店也有,也是白送的。你要做的就是依照这些图纸,手册,自己动手组装一部高性能跑车(现在情况好多了,有了Ubuntu这个组装商,虽说组装出来的不是布加迪威龙型的,保时捷型的总还说的过去)。DIY向来是那些精力过剩的Geek的最爱,所以他们当然乐此不疲地捣鼓Linux系统。普通大众也当然会对此望而却步,他们需要的无非是能快速地进行文档编辑,舒舒服服地坐在椅子上听千千静听放出来的音乐罢了。再说了,甲壳虫开得好好的,遵守交通规则,不超速驾车,不违规超车,干嘛要去开一部难以驾驭超级跑车。就连Linus自己都说”Wild Linux”(野性的Linux)。说一下题外话,如果大家搜一搜这方面的文章,可能会搜到一个叫王垠(很牛的一个人,曾经捉到过里面的臭虫)的清华博士生写的《完全用Linux工作》。我同意里面大部分观点,只是不太欣赏文章激烈的措辞。
如果觉得自己对DIY计算机之类的毫无兴趣,对计算机的要求就是能快速上手就行,Windows已经很棒了(毕竟每一个Windows版本是几千高级技术人才的几年工作的结晶)。
但是如果你是个Geek,而且对效率有很高的要求的话,Unix/Linux无疑是不二选择。你可能会问:“那么不易用的东西,效率怎么会高呢?”呵呵,这个问题就留到下一篇解答了。
本文由 Malloc 创作,转载或引用前请联系我们。
相关文章:



哇~不错不错。。支持一下
回复
linux内核也有崩溃的时候….
回复
纯粹的内核崩没见过,文件系统崩倒是见过
回复
我认识个人,用snapshot的内核崩溃了,系统都起不来.
kernel又不是tex,没bug…
回复
呵呵,文章有些地方我说得是有点夸张:)
回复
“毕竟每一个Windows版本是几千高级技术人才的几年工作的结晶”
如果努力方向不对,人越多,时间越长,只能错得更远喵…
回复
Vista…
回复
唔,我上次装Ubuntu的wubi,然后更新grub,结果把mbr搞坏了…
回复
这个问题是比较纠结,现在我也只会用光盘恢复
回复
顶~~对linux挺有好感~~
回复
呵呵,好东西啊
回复
http://blog.programet.org/2009/08/%E6%88%91%E4%BB%AC%E9%9C%80%E8%A6%81linux%E4%BB%AC%E5%90%97.html
翻到了这篇文章:-)
回复
那时写得很稚嫩~
回复
现在也是喵….
回复
还好还好
回复
什么时候出1啊
回复
其实这是一个坑
回复
我也在用linux,支持一下
回复
此文已坑
回复
1
回复
所以说你要是不写我就接手了
回复
可以商讨细节啵
回复