Linux等操作系统杂谈
这部分基本上都是感性认识,介绍一下发展历史什么的。所以基本上都不是我原创的,转载来源都标记在文中了,如果侵权的话请联系删除
操作系统发展历史吃瓜
《Unix、Windows、Mac OS、Linux系统故事》
来源:https://zhuanlan.zhihu.com/p/48834280
我们熟知的操作系统大概都是windows系列,近年来Apple的成功,让MacOS也逐渐走进普通用户。在服务器领域,恐怕Linux是无人不知无人不晓。他们都是操作系统,也在自己的领域里独领风骚。这都还得益于另外一个古董级别的操作系统--Unix,虽然说古董级别,只是他年纪大了,性能和功能,Unix依然有着顽强的生命力。
我们来沏杯茶,回顾Unix的传奇,讨论讨论Windows与Mac OS的恩恩怨怨,还有Linux的迅速崛起。
Unix 传奇
时光追溯到上世纪六十年代,多数计算机都采用批处理命令。为了研发一个多用途,多用户的操作系统。有三个著名的公司联合起来进行研发。三个知名的公司是美国电话及电报公司(American Telephone and Telegraph Inc.;AT&T)、通用电器公司(General Electrics;G.E.)及麻省理工学院(Massachusetts Institute of Technology;MIT)。整个项目研发出来的操作系统被称之为MULTICS。可是后来,MULTICS项目开始迷失,目标过于庞大,功能过于复杂,研发的人们越来越不明白这个项目将会如何走下去。最终隶属 AT&T 公司的贝尔实验室(Bell Labs)退出了这个项目。
值得一提的是 Bell Labs 。这个实验室在整个人类科技史上都占据重要地位,电话就是在这个实验室诞生。里面有着才华卓越的工程师和黑客。由于贝尔实验室退出了MULTICS,那些习惯了使用MULTICS的贝尔实验室工程师突然之间无法使用MULTICS,这无疑类似把剑客的剑给没收了。当时贝尔实验室有个叫Ken Thompson的人,他负责为为MULTICS这个操作系统写游戏了个叫“Space Travel”的游戏。为了让这个游戏能继续下去,他不得不重新编写一个操作系统。当他去申请计算机的时候,显然领导不会因为一个游戏批准你一台计算机。早起的计算机并不像我们现在的pc机那么小巧。当时计算机可是巨无霸,每一台的造价也极其昂贵,只有企业和科研机构才能买得起。
数字设备公司(Digital Equipment Corporation;DEC)生产两种小型计算机 pdp系列和vax。 Ken无法得到pdp-11,却在一个角落了发现了pdp-7,虽然这个机器已经落后, Ken还是觉得如获至宝,随后他很顺利的用汇编完成了操作系统,并写完了游戏。有趣的是,Ken的一个同事Brian Kernighan非常不喜欢这个系统,嘲笑Ken Thompson说:“你写的系统好真烂,干脆叫Unics算了。”(unics在英文里表示单一,与mult相反)。Ken对Brian的评价到没有多大排斥,本身他的目标是游戏,而不是操作系统,也接受了同事的命名。然后他更乐于推广他的游戏,让同事们茶余饭后娱乐娱乐。那时是1969年8月,恰巧这一年,芬兰诞生了一个婴儿,Linus Torvalds啼哭的来到这个世界。
事情总是环环相扣,可是谁也不知道这环将会扣向哪一环。Ken的另一个同事Dennis Ritchie对Ken的游戏没有多大兴趣,倒是对Unics情有独钟。当时Ken用汇编完成的Unics,如果换到pdp-11上,Unics想要运行必须重新冲重新编写代码移植。Ken无法为当时不同的机型提供上百个Unics版本。这时,Dennis Ritchie 在BCPL基础上,开发了一种新的高级语言将Unics重新写了一遍,并命名为 UNIX。这个语言是将BCPL语言进行了升级,也就是后来大名鼎鼎的C语言。尽管是游戏和嘲讽,Unix和C诞生了,并且完美地结合成为一个统一体,C与Unix很快成为世界的主导。新的历史,开始了。
当时的美国公司,工程师研发完毕,往往会有休假,一休就是一年。旅游,探险都是好方式,可是 Ken选择了到伯克利(Berkeley)进行教学。也难怪欧美的教育科技那么发达,总有黑客将知识和技术进行传承。由于当时AT&T被美国反垄断制裁,Bell实验室不能销售Unix。只能无偿提供大家学习研究。正是因为这样开放环境,使得Unxi的功能和特性被不断的丰富。在Berkeley,有一个专门研究UNIX小组,他们为UNIX提供了很多新特性,例如著名的 TCP/IP协议。并完成了BSD版本。很快,就有公司看到了BSD的商机,分分购买BSD进行商用。
这个时候,AT&T公司对其他机构拿着Unix赚钱自己却一无所获很不爽。那是一个AT&T妄图私有化的Unix的时代。为了私有化Unix,1986年IEEE指定了一个委员会制定了一个一个开放作业系统的标准,称为 POSIX (Portable Operating Systems Interface)。并和BSD进行法律官司,AT&T再次被反垄断,这场官司一直打到 AT&T再将自己的Unix系统实验室卖掉。当然,AT&T的Unix取得了这个标准制订战争的胜利,并取得了Unix注册商标。此时BSD的拥护者自喻为冷酷无情的公司帝国的反抗军。独立的Bell实验室就可以单独销售Unix,当时价格昂贵。也就在这个时候,人们被昂贵的Unix吓怕了,使用的人数骤减。与此同时,Berkeley BSD小组的Bill Joy开始创办了一家公司,也就是后来全球知名的SUN公司。就销售量来说,AT&T/UNIX始终赶不上BSD/Sun。并且Sun生产的小型工作站,风靡整个市场,很快就将 DEC 击败,并且让DEC退出了历史舞台。
BSD 仍然还在官司缠身,可是其他公司都看到了UNIX的商机,分分投靠 AT&T 并开发自己的Unxi,其中有著名的IBM的AIX,HP的HP-UX,SUN公司的Solaris,还有西雅图一个不知名的小公司,也生产着一个叫XENIX的Unix。时光继续走着,这个小公司的三个创始人打着扑克,心里还在构思。自己的公司如何挑战并取代那些巨无霸公司,成为是Microsoft未来的梦想。
Windows与Mac OS的恩恩怨怨
毫无疑问,Unix的诞生,对与计算机的发展起到了至关重要的作用。人们可以通过操作系统去使用计算机。然而在当时,尽管DEC生产的小型机PDP系列和VAX系列比起早起的巨无霸已经算是比较苗条了,可是对于个人而言,计算机还是相当大的东西,并且造价昂贵,无法进行民用。
为了将大型计算机缩小体积,很多公司都在尝试。1975年,IBM推出了早起的PC兼容机。我们知道,操作系统与CPU是有直接关系,不同的cpu运行的操作系统是不一样的。当时Unix价格昂贵,IBM一台PC兼容机造价2w美元,操作系统都要花4w。这样还是无法民用,因此IBM选择了一家小公司Inter生产的X86系列的cpu。Inter是小公司?没错,当时确实是这样,小到不起眼。而主流生产cpu的却是摩托罗拉,摩托罗拉生产的M6800比Inter的技术和设计上都要先进很多,更重要的是这个可以运行Unix。IBM放弃了兼容机上的Unix,因而不得不自己写出了一个兼容X86的操作系统---PL/M。当然这个东东造价也不菲。
微软联合创始人Allen同学Tim Paterson原本是打算写个东西用来测试的16位Intel 8086 CPU界面,于是花四个星期写了一个操作系统。当Bill Gates得知之后,马上花5W美元买下了这个系统,Tim Paterson欣喜若狂,四个星期就赚了一大笔,简直像做梦,赶紧和Bill签订合同,Bill得到之后并命名为DOS。随后,Bill通过其IBM董事会成员的妈妈,得以和IBM高层谈判。IBM兼容机的操作系统价格昂贵,不适合卖个普通用户,IBM定义的主要对手是如火如荼的Apple,IBM想要压制apple就需要廉价的计算机。微软可以提供廉价的DOS,当然不是卖操作系统,而是卖操作系统的许可。每台IBM兼容机都捆绑一个DOS。Bill的招数就是捆绑,从dos到IE都是如出一辙,当然特别奏效。IBM也没想多少,他们认为硬件才是赚钱的根本,DOS也便宜。两者结合,果然市场颇受欢迎,Bill也赚到了千万刀。
IBM兼容机逐渐推向市场,与Apple一较高下。此前,在一个车库,两个年轻的极客,一个对机器怀有无比的热情,另外一个则对改变世界十分狂热,两个人黏在一起,创立了一家伟大的公司Apple。与IBM兼容机不一样,Apple的早期微机,采用是摩托罗拉的cpu和unix。Jobs独特的艺术气质与Wozniak的技术天才,让Apple的微机在市场上极受欢迎。
Jobs对技术和艺术的卓越追求,让他不断的改进Apple的电脑。1973年施乐(Xerox)的PARC研究所开发出GUI接口与鼠标(题外话,历史上有两个著名的雷锋实验室,前面提到的Bell 和 这个 Parc)。但是Xerox本身是生产打印机的,董事会莫名其妙的觉得GUI一旦出现,顾客就不乐意使用打印机,因此对Park实验室的成果冷淡的打入冷宫。
1979年乔布斯到PARC研究所看到Xerox原型机Alto。敏锐的Jobs立刻发现了GUI和鼠标的商业价值,很快他就说服Xerox公司,以一个极低的价格买下了GUI进行研究。1983年苹果公司推出了Apple Lisa,首次采用GUI的商品化计算机。Lisa一诞生,就震撼了整个微机市场,那个车库里的年轻人因此身价过亿。
Apple蒸蒸日上,Mcriosoft的Bill心里可不是滋味。现在人们习惯把Jobs和Bill进行比较,不可否认他们都很伟大,至少在IT领域。不同于Jobs的完美主义和偏执狂的作风,Bill更圆滑和更中庸。Bill找到了Jobs,大加赞赏了Jobs的伟大,然后卑微的祈求一份Apple的GUI,并承诺Microsoft的一切成果都是Apple的。不可一世的Jobs答应了,Bill得到了Lisa原型机,马上组织团队研发,并在1990年5月份推出Windows3.0并一炮而红。商业上取得惊人的成功。打破了任何软件产品的六周内销售记录,从而开始了微软在操作系统上的垄断地位。
此时Jobs发现了Bill这个小偷,勃然大怒,可是为时已晚。对此,Bill并不否认,反而很得意讥讽乔布斯说:“我们有一个富邻居——Xerox,他家有一台电视。当我们想偷的时候,发现乔布斯早就偷走了,可他却说我们是小偷。”他们两人,都验证毕加索那句著名的格言:“好的艺术家抄袭,伟大的艺术家偷窃。”
但是Jobs心有不甘,因此着手研发Macintosh,由于Macintosh造价昂贵。在市场上逐步落后与Microsoft的Windows。Windows持续发展着,对于Jobs,Apple正在酝酿着一个地震,1985 Jobs被赶出了Apple。
此时,Unix在干嘛呢??Unix正忙着和BSD打官司,也正是这些时间,错过了操作系统发展的黄金时间,当Microsoft和Apple逐渐由小人物变成巨人的时候,Unix已经脱离了商业的主流。尽管如此,Unix先天的优雅并不会就此沉沦,DEC生产的机器,原本是自有操作系统,随着后来Unix的发展,不得不买PDP和VAX的时候添加Unix。其中VAX本身有一个操作系统VMX。由于Unix的入侵,VMX团队面临解散。
Windows风靡市场,一时洛阳纸贵。可是早期的windows并不稳定,蓝屏是家常便饭。Bill并没有偷到Jobs的核心技术,只获得了GUI。因此windows可谓先天的不足。郁闷的Bill找到了同样郁闷的VMX团队。很快两个失意者结合。Microsoft死活硬凑的将windows和VMX结合,诞生了Windows NT。NT诞生不久又出现了Server版本,Server的诞生,敲响了另一家公司的丧钟。当时网络已经出现,Novell生产网络操作系统占据网络统治地位,可是NT的出现,Novell的生命也走到了尽头。
被赶出Apple的Jobs同样没有停止他的步伐,Jobs离开Apple之后创办了如今三维动画巅峰旗帜的Pixar公司.并且Apple在对Microsoft的竞争中逐步走向衰败,Apple董事会不得不重新召回Jobs挽救Apple日益颓废的江山。Jobs果然是帮主,他的回归,Apple散发了第二春,几款革命性的产品iPod,iPhone将Apple再一次走到了世界的巅峰。MacOS成为了人们热衷的操作系统,这个曾经败给Windows的操作系统又回来了,并且在移动断,iOS也成为了霸主,后来Google 的Android加入争斗,那是后话了。
Microsoft的 windows xp成为微软史上成功的操作系统。可是Jobs回归之后的Apple,XP丑陋的界面很难和炫目的MacOS较量。Microsoft早期和IBM共同研发OS/2,由于后来和VMX的结合而退出了OS/2。IBM又一次验证了谁跟微软合作谁被坑的规律。可是针对MacOS,Microsoft一直对和VMX的结合产品心有余悸。最终用低价从IBM手下买回了OS/2,并重新拼凑了一个“绚丽”的操作系统Windows Vista。
显然,OS/2被IBM定义为史上最失败的产品,具有讽刺的是,Vista也不约而同的被Microsoft定义为失败的产品。Microsoft不得不在短时间内重新开发。推出了Xp的取代者--Windows7。先如今,Microsoft在互联网遭遇Google强大的统治, 移动方面windows phone也生存在Apple IOS的阴影之下。
曾经强大到像日不落帝国的Microsoft,也在谋求着新的蜕变。当然,Microsoft依然统治着桌面操作系统,在服务器端,另外一个崛起的不是Unix,不是MacOS,也不是Wndows的操作系统,他已然加冕成为新的王者。那就是Linux的故事,这个故事也很有趣,伴随自由的运动,黑客的分享的精神。比起之前少了很多商业的争斗气息,更多是那些黑客传奇的故事。我们得重新打开历史书,回到1991那年的夏天,阳光明媚的芬兰赫尔辛基大学的校园里...
Linux的崛起
我是你可怕的恶梦
------------Eric Raymond
Eric Raymond,黑客,他写了一篇论文《大教堂与市集》,也写过一本书叫《unix编程艺术》。于是整个世界都改变了。
纪录片《Revolution OS》描述,一次开发者大会,他遇到一个微软工程师,看见衣服上Microsoft的标志便询问对方:“你为微软工作?”当那位西装革履的工程师带有嘲讽和鄙视看着这个衣着普通的黑客回复:“是啊,你呢?”Raymond送去了一个微笑:我是你们可怕的恶梦。。。
黑客是Microsoft的恶梦?不,不仅仅是,黑客是一切不自由的恶梦。电脑和网络,已经成为现代社会和文明不可或缺的产品。很多人电脑使用Microsoft的windows系统,而这些机器所访问的web页面。其背后的服务器系统却是Windows的死敌---Linux。相比Windows成为家喻户晓并家家都在使用的操作系统。Linux很少被普通人知道,但是这并不妨碍它的伟大。他们分别在桌面和服务器两个环境,各自称霸着世界。
谈到Linux的起源,这个故事平凡却扣人心弦。1991那年,对于芬兰人绝对是一个有意思的一年。世界上首次全球通对话在诺基亚的Radiolinja网络中完成,诺基亚征服世界的脚步已经无法遏制。
与此同时,阳光明媚的芬兰赫尔辛基大学的校园里,一个少年正好拥有了一台完全属于自己的电脑,不必再忍受学校机房漫长的等待。他当时对安德鲁·塔南鲍姆(Andrew Tanenbaum)的著作《操作系统:设计与实现》——一本Minix操作指南深深着迷。
由于AT&T对于Unix商业化,而后将Unix进行了闭源。Andrew所教授的课程《操作系统》却没有了“操作系统”。对此Andrew一咬牙,狠狠心,写出了一个兼容Unix的操作系统。人家就是厉害,你不给我使用,我自己写一个出来用。尽管Andrew的成果很简单,但是还是具备了Unix的基本功能,当然比较mini,因此命名为Minix。Minix作为Unix的变种,彼时的Minix正凭借低廉的价格和简易的操作在大学大行其道。
Minix由于过于短小精悍,只能运行这一种机器,其他机器没有驱动。Andrew的学生就写了好多好用驱动来扩展Minix。可是,教授Andrew却觉得自己的操作系统要保持纯洁,不能有其他的代码来源。于是学生们就很郁闷,其中就有个叫Linus的同学。
拥有自己的PC的Linus却不能将Minix运行在自己的电脑上。Linus也不得不走上了他无数前辈的道路,不让用,不给用,那就自己写一个操作系统来用。仅仅两个月后,一个“千疮百孔但却碰巧可以使用”的磁盘驱动程序和一个小到不能再小的文件系统就诞生了,这就是第0.01版的Linux。随后Linus将操作系统上传至FTP,并公布了全部源代码。在USENET讨论区,Linus阐述其初衷:在新操作系统中,“人们可以自己编写驱动程序,可以随意修改操作系统以适应不同需求,可以尝试在Minix上运行所有程序,这是Minix从未有过的美好一天。”
美好的日子渐渐来临,Unix生态还是老样子,在商业的争斗中裹足不前。Microsoft和Apple的争斗也逐渐明朗,Microsoft靠卖软件大发特发。这让一个黑客很不满。
理查德·斯托曼(Richard Stallman)登场,他认为所有软件都是人类智慧和思想的结晶。软件应该自由的让人们使用。1983年,Stallman发起了“GNU(GNU’s Not Unix的递归缩写)”计划,目的是创建一套完全自由的操作系统,以“重现软件界合作互助的团结精神”。他以“著佐权”(copyleft)标准为范本拟定了一份通用公用版权协议(General Public License,GPL)。与强调个人版权但限制自由传播的著作权(copyright)不同,GPL更强调公共版权和鼓励自由传播,它允许修改程序、复制软件和销售获利。但前提是公布修改后的全部源代码,必须保证自由思想的传递。GNU计划激发了软件界极大的热情,世界各地的软件奇才们纷纷参与其中。并且开发出包括文字编辑器Emacs、C语言编译器,gcc以及大部分UNIX系统程序库和工具在内的绝大多数软件,很多免费软件的水平甚至都已经超过了相应的付费版本。
可是问题又来了,GNU编写了很多自由免费的软件,可是这些免费软件却运行在不自由的Unix上,这真是一个巨大的讽刺。Stallman承诺大家要两年内重新写一个操作系统,可是五年过去了,依然看不清成功的那一天。
与前面很多故事一样,事情总是环环相扣,可是谁也不知道这环将会扣向哪一环。Stallman苦于没有操作系统,芬兰的那边,Linus只有一个操作系统内核而没有应用软件。
于是,他们在各自的领域奋斗多年之后,命运终于安排他们走到了一起,Linus率领Linux加盟Stallman的GNU计划,上帝说要有光,于是牛顿出生了;人类需要自由,于是Linux与GUN结婚。这一“联姻”堪称是软件界的天作之合。
1992年,在Linux Kernel平台上工作的开发者只有100位,平台中的核心代码只有几万行。如今,在平台上工作的开发者已经多达1000人,人员的背景也从最初的黑客扩散至更多的行业,平台中的核心代码则已经超过千万行。
1998年,全球前500台超级计算机中还只有1台运行Linux。今天在全球前500台超级计算机中,有413台选用Linux。这些计算机遍布世界各地的多个行业,共同主宰着这个智慧的地球。
大到航天科技,小到IC卡芯片,无不存在Linux的影子。在移动领域,Android来势汹汹,已经逾越IOS成为移动的王者,完成了对windows的完美复仇。
Linux“可自由扩散”并不等同于“缺乏支持”和“业余水平”,恰恰相反,正是起开发的政策,让无数天才黑客参与进来,这是自由的胜利。
就连商业软件公司也参与进来,这些公司技术雄厚又善于市场运作,开创了新的商业模式----销售服务而不是软件。使Linux从网络黑客和业余爱好者自娱自乐的工具,变成了一个具有全球影响力的软件帝国。
zhihu.com/question/39839971
作者:知乎用户
先说微软。
UNIX可不是什么“自由”的东西。UNIX是商标,有版权。直到现在,任何操作系统想要自称UNIX,除了要兼容UNIX标准,还需要掏大钱去做认证。因此符合要求的只有Mac OS X,Solaris等系统。Linux不完全兼容标准,兼容标准的BSD不想掏钱做认证。当年(自称)拥有UNIX的SCO还告过IBM,理由是Linux侵权,闹得鸡飞狗跳,最后以SCO把自己耗死收场。
因此,M$不想在UNIX代码基础上开发十分正常。NT Kernel开发时,AT&T还在告BSD,科技公司人心惶惶,根本没有可以自由使用的UNIX代码。用一个商标就够麻烦了,要是再用代码,简直是把命交到别人手里,因此NT Kernel完全是从零开发的。从头造轮子也有利于挣脱历史束缚,当年新鲜出炉的时候,NT Kernel一点不比UNIX Kernel差,至少在GUI效率上远远比UNIX上的X window强(到现在x window的效率也不咋样)。
再说Google。
其实Google的情况很简单。选Linux Kernel是因为这个项目已经非常成熟了,各方面表现都不错。所谓“正统UNIX”到了2008年,只是个破落贵族的牌坊,连好看都算不上了,只能吓唬吓唬不懂行的人。
最后说苹果。
苹果也没从什么“正统UNIX”上面开发。苹果最初的想法也是去选Linux Kernel。无奈乔布斯和林纳斯两个大神谈崩了。林纳斯看不上乔布斯的OS X计划,总觉得桌面Linux很快统治世界,而OS X这种内核开源GUI封闭的半调子不靠谱。最终苹果启动B计划,把FreeBSD的领头人挖来,最后基于Mach和BSD开发出了自己的基本系统darwin。当时BSD的版权撕逼已经结束,darwin不会再有法律风险。OS X和iOS都基于darwin。
最后说一下,最“正统”的UNIX是AT&T的UNIX SYSTEM V系列,现在流行的所有*NIX系统,不是旁枝,就是山寨。我自己是不知道还有哪些地方还在用SYSTEM V这种恐龙级的老系统了。
(之前记错了,darwin不光是内核。内核名叫XNU,darwin除了XNU,还包括其他一些基础组件。darwin是OS X的开源部分。)
(另外某个答案说,“上来就说 Unix 是一个「商标」的,这观点也太落伍了”。我们讨论的是三个系统研发的时候的事情,至少也是十几二十年前的事,而不是现在。那个时候,UNIX商标和产权还相当重要。现在固然是没多少人把正统Unix的招牌当回事了,但是招牌就是招牌,真要用就必须正式拿到许可,否则就是只能叫Unix-Like而不能官方宣称自己是XX Unix)
Linux的桌面系统介绍
这部分是转载的,原文来自:https://blog.csdn.net/Aria_Miazzy/article/details/84729537
对于Linux桌面环境来说,因为具备着各种独特的设计风格、功能配备以及自身特性。从具体硬件平台上,只有通过实际情况才可以判断一款桌面环境究竟能否适合用户的需求。这里就来为大家推荐七款顶级Linux桌面环境选项。*
一、Unity
Unity是一款Ubuntu自家的桌面环境,并面向Ubuntu推出和开发。目前还没有其它Linux发行版采用Unity作为桌面方案。
从Unity设计风格上,Ubuntu对于桌面环境定位效果与传统Windows桌面没有太大区别。Unity最具特色的一项功能“scopes”,允许通过“dash”搜索不同类型的网络与本地内容类型,也包括安装在系统当中的应用程序。另外,Unity还拥有其它一些独特的设计,如“HUD”就允许用户直接搜索某款程序中的菜单选项,并通过键盘直接加以启用。
开启了Dash菜单的Ubuntu Unity桌面方案
Unity的一些用户往往对其可配置能力有所顾忌,Unity启动器栏一直显示在屏幕的左侧,而且用户无法将其移除。窗口按钮(包括最小化、最大化与关闭)则显示在每个窗口的左上角设计与Mac OS X相同。Unity几乎没有发生大变化,但Ubuntu项目团队即将推出同时面向手机与台式机的融合优化型Unity 8版本。
此外,Unity只能作为Ubuntu主桌面的组成部分。
二、GNOME 3
与其它主流桌面Linux发行版一样,Ubuntu曾使用过GNOME桌面方案。自从GNOME 2逐步升级到GNOME 3乃至GNOME Shell桌面之后,GNOME Shell的改变让人们改变之前版本的成见。即使是习惯传统桌面环境的用户,也可以通过GNOME提供的经典模式拥有了完整的可配置能力。
运行Fedora Workstation中的GNOME桌面方案从设计上,Unity与GNOME十分相似,能够利用3D图形硬件实现炫丽的视觉效果。GNOME 3.16添加了一套集中式通知中心,从而在功能性方面领先Unity。凭借着强大的扩展选项,GNOME还拥有远超Unity的可配置能力。
Fedora Workstation使用最新GNOME为其默认桌面选项,而GNOME也得到了充分的施展空间。Debian同样采用GNOME作为默认桌面方案,不过Debian 8所使用的GNOME版本相对老一些。
三、KDE Plasma 5
KDE与GNOME都属于Linux阵营中最具影响力的桌面环境选项。GNOME桌面形成GNOME、Unity、Cinnamon及MATE等多个阵营,但KDE项目却保持很好的市场表现。Plasma 5界面也拥有精致的风格。
KDE在可配置性方面一直优于GNOME以及GNOME衍生的Linux发行版。针对用户的实际情况,喜欢多选项所带来的自由搭配空间,或也有些用户更倾向于GNOME精简化方案。KDE已经简化很多高级选项,用户可以直接享受其搭配合理的默认效果。
Kubuntu当中的KDE与Unity、GNOME、Cinnamon或MATE完全不同,这些桌面环境都使用内置于GTK工具包中,与GNOME非常相似的应用组合。而KDE坚持Qt路线并拥有着一套与之配合的应用套件,量身打造出来的效果让KDE上的应用与主屏幕及桌面更好融合。
四、Cinnamon
Cinnamon原本专门面向Linux Mint所打造,但如今多种Linux发行版上有着不错的表现,具体包括Ubuntu、Fedora以及Debian等。
采用Cinnamon桌面方案的Linux MintCinnamon采用现代代码编写而成,但重新调整为用户提供一套更为传统的桌面界面。GNOME舍弃了任务栏以及开始菜单类界面来显示已安装应用程序的同时,Cinnamon则选择围绕这些更为传统的特性构建桌面环境。另外,相比较GNOME以及Unity,Cinnamon始终为桌面用户提供更多新增功能及改进。
对于传统Linux桌面环境用户,Cinnamon定位让倾向于传统窗口列表、不喜欢Windows 7新型任务栏机制的用户更为关注,同时为了获得最佳Cinnamon体验,配合Linux Mint一同使用。
五、MATE
MATE与Cinnamon是两种相似的桌面环境,同时受到Linux Mint支持。尽管Cinnamon采用了GNOME 3中的一部分代码并将其fork成一套传统桌面,MATE却采用更加陈旧的GNOME 2桌面代码,并Linux发行版中进行更新。除了Mint之外,MATE也适用于Fedora、Ubuntu以及Debian等。
Linux Mint采用MATE桌面对于使用过GNOME 2的用户,MATE将成为最为理想的桌面环境选项。新用户们则更喜欢Cinnamon这款现代代码的传统风格桌面。在Cinnamon的使用过程中遇到了性能问题,并因此希望找到一套替代性方案,MATE 2确实是一个不错的选择。
与其它现代的桌面环境不同,MATE在默认情况下并不需3D加速硬件实现桌面视觉效果。不过通过启用Compiz,在MATE桌面上享受到更多酷炫的光影特效,选择Linux Mint与MATE来进一步感受使用体验。
六、Lxde
作为一款轻量级兼用户友好桌面环境,Lxde相较于现代Linux桌面环境,对于图形硬件、CPU时钟频率以及内存的配置要求较低。虽然看不到炫目的图形特效,但能获得最为基本的轻量级桌面环境使用体验,并启动并管理应用程序。
采用Lxde桌面的Lubuntu系统对于用户来说,要获得最理想的Lxde使用体验搭配Lubuntu一同使用。
七、Xfce
从传统角度讲,Xfce仅次于GNOME与KDE的第三大人气选项,它在轻量化水平上稍优于KDE与GNOME。而在GNOME 3正式发布之后,Xfce已经成为最顶尖的“传统”Linux桌面环境。
采用Xfce桌面的Xubuntu系统相比之前提到的桌面,Xfc面对Lxde和MATE的竞争。Lxde轻量化效果更出色,而Cinnamon在功能集丰富度方面更突出。从这个角度讲,MATE的功能更为齐备,在轻量级水平上则与Xfce基本持平。目前Xfce发展速度已放缓,最好与Xubuntu配合使用。
由此,通过直接启动特定Linux发行版的方式体验各类不同桌面环境。或将桌面环境安装现有Linux系统之上,并在登录界面中进行可用桌面环境切换,出色的灵活性正是Linux最大的亮点,这些仅是众多Linux桌面环境中的一部分,希望通过介绍找到最适合自己的选项。
转载来源:http://server.zol.com.cn/537/5373142.html
《GNOME与KDE的战争》原地址:https://i.linuxtoy.org/docs/guide/ch49.html
虽然在商业方面存在竞争,GNOME与KDE两大阵营的开发者关系并没有变得更糟,相反他们都意识到支持对方的重要性—如果KDE和GNOME无法实现应用程序的共享,那不仅是巨大的资源浪费,而且将导致Linux出现根本上的分裂。
KDE 与GNOME是目前Linux/UNIX系统最流行的图形操作环境。从上个世纪九十年代中期至今,KDE和GNOME都经历了将近十年的漫漫历程,两者也都从最初的设计粗糙、功能简陋发展到相对完善的阶段,可用性逼近Windows系统。图形环境的成熟也为Linux的推广起到至关重要的作用,尽管 Linux以内核健壮、节省资源和高质量代码著称,但缺乏出色的图形环境让它一直难以在桌面领域有所作为,导致Linux桌面应用一直处于低潮。如果大家还有印象,一定会记得1999-2001年间Linux发展如火如荼,当时国内涌现出大量的Linux发行版厂商,但当用户发现Linux距离实用化还有十万八千里的时候,Linux热潮迅速冷却。业界也对此一度灰心失望,其中一部分厂商因无法盈利迅速销声匿迹,另一部分厂商则不约而同将重点放在服务器市场—与桌面市场形成鲜明对比的是,Linux以稳定可靠和低成本的优势在服务器领域获得了巨大的成功。
在一些Linux厂商放弃桌面化努力的同时,国际开源社群却不断发展壮大,自由的理念吸引越来越多一流的程序员参与。与商业模式不同,自由软件程序员在开始时都只是利用业余时间开发自己感兴趣的东西,并将其自由公开,这是一种不折不扣的贡献行为。尽管开发进度缓慢,但认同自由软件理念的开发者越来越多,一个个开源项目逐渐发展壮大。
在此期间一个被人忽视的重大事件就是商业巨头也积极参与进来,IBM、RedHat、SuSE、Ximian、 Novell、SUN、HP等商业公司都直接介入各个开源项目,这些企业或者是将自身的成果免费提供给开源社群,或者直接派遣程序员参与项目的实际开发工作,例如SuSE(现已为Novell收购)在KDE项目上做了大量的工作,RedHat、Ximian(现已为Novell收购)则全程参与Gnome 项目,IBM为Linux提供了大量的基础性代码,是推进Linux进入服务器领域的主要贡献者,SUN公司则将StarOffice赠送给开源社群,并资助成立著名的OpenOffice.org项目。这样,大量的自由软件程序员都可以从各个项目的基金会中领到薪水。在这一阶段,开源项目摆脱了程序员业余开发的模式,而由高水平的专职程序员主导,这也成为各个自由软件项目的标准协作模式。与商业软件公司不同,自由软件项目的参与者都是首先为个人兴趣而工作,他们的共同目标都是拿出品质最好的软件,在协作模式稳定成形之后,各个软件就进入到发展的快行道。进入2005年后,这些项目基本上都获得了丰硕的成果,其中最突出的代表就是Firefox浏览器的成功,而作为两大图形环境,KDE和GNOME分别发展到3.5和2.12版本,两者的可用性完全可以媲美Windows。更重要的是,开源社群的发展壮大为这些项目的未来发展奠定了坚实的基础:KDE项目将超越Windows作为自己的目标,力量更强大的 GNOME项目更是将开发目标定在超越Mac OS X的Aqua图形环境;Firefox则计划运用GPU的硬件资源来渲染图像,达到大幅度提高速度的目的;OpenOffice.org在努力提升品质的同时奠定了开放文档格式标准。除了上述主要项目之外,我们也看到如Mplayer播放器、Xine播放器、Thunderbird邮件客户端、SCIM输入平台等其他开源项目也在快速发展成熟之中,且几乎每一天都有新的项目在诞生。有意思的是,除了涉及到软件开发外,还出现了为Linux设计视觉界面的开放协作项目,全球各地有着共同目标的艺术家通过互联网组织到一起,共同为Linux系统设计一流的视觉界面、系统图标,而所有的自由软件程序员都有一个共同的目标,那就是开发出一流水准的软件提供给大众使用。这种基于挑战自我、带有浓烈精神色彩的软件开发模式成为商业软件之外的另外一极。现在,微软面对的并不是那些只在业余时间鼓捣代码的程序员,而是分布在全球各地、数量庞大、且拥有一流技术水平的开发者,这些开发者被有效地组织起来,形成一个个有序的协作团队,大量实力雄厚的商业公司在背后提供支持。虽然今天的Linux系统还无法在桌面领域被广为接纳,但只需要两、三年时间,高速进化的Linux平台将可达到全面进军桌面的水准,也正是看到其中的机会,Novell、RedHat等重量级Linux企业都不断在技术和市场推广方面加大投入,Linux 桌面化近在咫尺。
在介绍完必要的背景之后,我们将进入关于KDE与GNOME的技术专题。如果你是刚刚接触Linux的新手,一定会对KDE和GNOME感到困惑不已—为何会有两个功能重复、操作习惯迥异的图形环境?这不仅麻烦也耗费开发者精力。通过本文,你将获得清晰的答案。而更重要的是,我们将在本文中向大家介绍 KDE与GNOME的实际水平、各自的优点和未来发展趋势。如果你对Linux桌面应用有些兴趣,那么未来的 KDE/GNOME一定会让你感到震惊不已。
Linux等操作系统杂谈的更多相关文章
- MAC地址查询 Linux/Unix操作系统mac地址怎么查
Linux/Unix操作系统熟悉的人都通常是用console命令控制台来进行相应的操作. Linux/Unix操作系统查看网卡mac地址的方法可以通过以下命令获得: 1.ifconfig -a 2. ...
- Linux服务器操作系统
Linux服务器操作系统 今日大纲 ● 服务器操作系统的系列.Linux的主流产品.虚拟机软件 ● 安装linux ● linux基本命令 ● 用户管理及权限(多用户) ● ...
- linux服务器操作系统,在相同环境下,哪个做lamp服务器更稳定点?哪个版本更稳定?
随着国内WEB服务越来越多,如何才能选择一个合适的linux服务器操作系统?在国内用的最多的好像是红帽子系列也就是red hat系列,但有些版本缺乏稳定性.新手在选择操作系统的时候最好只用偶数版本,还 ...
- Linux的操作系统I2C驱动架构解说
Linux的操作系统I2C驱动架构解说 发布时间:2006.10.16 04:52 来源:赛迪网技术社区 作者:LoneStar 最近因为工作需要涉及到了I2C总线.虽然我过去用过I2c,但看了 Li ...
- 实现windows操作系统和VB下Linux虚拟操作系统相互传取文件方式总结
在windows上执行虚拟机跑的是Linux的操作系统,怎样才干在不同的操作系统之间传递文件呢? 这是本人切身体会到的,假设你没有好的方法的话.确实非常痛苦.下面是我个人的方法总结: 方法一.很好用的 ...
- linux查看操作系统版本信息
linux查看操作系统版本信息 摘自:https://www.cnblogs.com/vaelailai/p/7545166.html 一.linux下如何查看已安装的centos版本信息: 1.L ...
- Linux查看操作系统版本的几种方式
Linux查看操作系统版本的几种方式: 1.uname -a 2.lsb_release -a 3.cat /etc/issue 4.cat /proc/version 5.cat /etc/redh ...
- 【操作系统】关于Linux桌面操作系统
以前是Win+Ubuntu+黑苹果,周末想体验一下deepin,于是简单安装了一下,安装过程很简单,这里不再描述.安装之后,第一次打开系统,确实很惊艳,赏心悦目的操作系统. 之前用Ubuntu时候,C ...
- Linux 查看操作系统版本信息 uname
Linux 查看操作系统版本信息 uname uname 命令用于显示当前系统的版本信息. 带 -a 选项的 uname 命令会给出当前操作系统的所有有用信息. 命令如下: [root@node1 / ...
随机推荐
- Java并发编程的艺术笔记(四)——ThreadLocal的使用
ThreadLocal,即线程变量,是一个以ThreadLocal对象为键.任意对象为值的存储结构.这个结构被附带在线程上,也就是说一个线程可以根据一个ThreadLocal对象查询到绑定在这个线程上 ...
- 前端面试题总结——HTML(持续更新中)
前端面试题总结--HTML(持续更新中) 1.什么是HTML? HTML:HyperText Markup Language超文本标记语言 2.XHTML和HTML有什么区别 HTML是一种基本的WE ...
- vue下实现input实现图片上传,压缩,拼接以及旋转
背景 作为一名前端工作人员,相信大家在开发系统的时候,经常有遇到需要这么一种需求,就是需要为用户保存上传的图片,很多小白遇到这个问题的时候,都会虎躯一震,以为会是一个棘手的问题,当你读完这篇文章的时候 ...
- go.js-拖拽流程图插件
1.去除水印 在文件中搜索7eba17a4ca3b1a8346,找到类似a.Jv=d[w.Jg("7eba17a4ca3b1a8346")][w.Jg("78a118b7 ...
- Linux Bash shell常用操作快捷键
转自:https://linuxtoy.org/archives/bash-shortcuts.html 生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 ...
- DeepWalk 安装指南
DeepWalk 安装指南 创建 conda 虚拟环境 conda create -n deepwalk pip python=3.5 conda activate deepwalk 安装 deepw ...
- leetcode 103二叉树的锯齿形层次遍历
与102相比就增加了flag,用以确定要不要进行reverse操作 reverse:STL公共函数,对于一个有序容器的元素reverse ( s.begin(),s.end() )可以使得容器s的元素 ...
- XAMPP安装后启动Apache的Busy解决方法
启动apache后,一直提示80 busy 使用netstat -ano查看,并无端口占用,真是奇怪. 百度之后发现有可能是启动后,ssl端口占用导致. XAMPP默认会加载一个SSL模块,它要占用一 ...
- Counter() most_common()
1 不仅可以统计list中元素的出现次数,也可以对str中的元素进行统计 # collections包中的Counter用于统计str list 中元素出现次数 from collections im ...
- fixture作用范围
ixture里面有个scope参数可以控制fixture的作用范围:session > module > class > function fixture(scope="f ...