Linux简介

本来我是不打算写这篇说明的,自己有一写话想记录一下。

1、什么是Linux?

既然想安装Linux,那就肯定对其有一些了解(我也是知其然不知其所以然)。

Linux是一种自由和开放源码的类Unix操作系统,虽然我们习惯称其为Linux操作系统,但是严格来说Linux是单指操作系统的内核。

2、Unix、386BSD、GNU、MINIX

2.1、Unix

Linux被称为类Unix,想要了解其历史,那就要从Unix说起。

Unix是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由肯·汤普逊(KenThompson)、丹尼斯·里奇(Dennis Ritchie)和道格拉斯·麦克罗伊(Douglas McIlroy)于1969年在AT&T的贝尔实验室开发。只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)。

Unix的前身为1964年开始的Multics(名称来自于多任务信息与计算系统(MULTiplexed Information and Computing System的缩写)一套分时任务操作系统,是1964年由贝尔实验室、麻省理工学院及美国通运电气公司所共同参与研发,安装在大型主机上。最后一个装有Multics的计算机已于2000年10月30日关闭),贝尔实验室(Bell Labs)1965年时,1965年时,加入一项由通用电气(General Electric)和麻省理工学院(MIT)合作 的计划;该计划要创建一套多用户、多任务、多层次(multi-user、multi-processor、multi-level)的MULTICS操作系统。贝尔实验室参与了这个操作系统的研发,但因为开发速度太慢,1969年贝尔实验室决定退出这个计划。贝尔实验室的工程师,肯·汤普逊和丹尼斯·里奇,在此时自行开发了Unix。

1969年,肯·汤普逊提议在PDP-7上开发一个新的阶层式操作系统的计划。Multics的原有成员,加上Rudd Canady,都投入这个计划。肯·汤普逊发现要编写驱动程序来驱动文件系统,进行测试,并不容易,于是开发了一个壳层(shell)与一些驱动程序,做出一个操作系统的雏形。在团队合作下,Multics的许多功能都被采纳,重新实现,最终做出了一个分时多任务操作系统,成为第一版UNIX。因为PDP-7的性能不佳,肯·汤普逊与丹尼斯·里奇决定把第一版UNIX移植到PDP-11/20的机器上,开发第二版UNIX。

第一版UNIX是用PDP-7汇编语言编写的,一些应用是由叫做B语言的解释型语言和汇编语言混合编写的。在进行系统编程时不够强大,所以汤普逊和里奇对其进行了改造,并于1971年共同发明了C语言。1973年汤普逊和里奇用C语言重写了Unix,形成第三版UNIX。在当时,为了实现最高效率,系统程序都是由汇编语言编写,所以汤普逊和里奇此举是极具大胆创新和革命意义的。用C语言编写的Unix代码简洁紧凑、易移植、易读、易修改,为此后Unix的发展奠定了坚实基础。

1974年,汤普逊和里奇合作在ACM通信上发表了一篇关于UNIX的文章,这是UNIX第一次出现在贝尔实验室以外。此后UNIX被政府机关,研究机构,企业和大学注意到,并逐渐流行开来。后来AT&T意识到了Unix的商业价值,不再将Unix源码授权给学术机构,并对之前的Unix及其变种声明了版权权利。

1975年,UNIX发布了4、5、6三个版本。1978年,已经有大约600台计算机在运行UNIX。1979年,版本7发布,这是最后一个广泛发布的研究型UNIX版本。20世纪80年代相继发布的8、9、10版本只授权给了少数大学。此后这个方向上的研究导致了九号计划的出现,这是一个新的分布式操作系统。

1982年,AT&T基于版本7开发了UNIX System Ⅲ(不包含UNIX版本7及以前版本的源代码)的第一个版本,这是一个商业版本仅供出售。为了解决混乱的UNIX版本情况,AT&T综合了其他大学和公司开发的各种UNIX,开发了UNIX System Ⅴ Release 1.

1991年,一群BSD开发者(Donn Seeley、Mike Karels、Bill Jolitz和Trent Hein)离开了加州大学,创办了Berkeley Software Design, Inc (BSDI)。BSDI是第一家在便宜常见的Intel平台上提供全功能商业BSD UNIX的厂商。后来Bill Jolitz离开了BSDI,开始了386BSD的工作。386BSD被认为是FreeBSD、OpenBSD和NetBSD、DragonFlyBSD的先辈。

AT&T继续为UNIX System V增加了文件锁定,系统管理,作业控制,流和远程文件系统。1987到1989年,AT&T决定将Xenix(微软开发的一个x86-pc上的UNIX版本),BSD,SunOS和System V融合为System V Release 4(SVR4)。这个新发布版将多种特性融为一体,结束了混乱的竞争局面。

1993年以后,大多数商业UNIX发行商都基于SVR4开发自己的UNIX变体了。

2.2、386BSD

386BSD was written mainly by Berkeley alumni Lynne Jolitz and William Jolitz. William Jolitz had considerable experience with prior BSD releases while at the University of California at Berkeley (2.8 and 2.9BSD) and both contributed code developed at Symmetric Computer Systems during the 1980s, to Berkeley. Work on porting 4.3BSD-Reno and later 4.3BSD Net/2 to the Intel 80386 was done for the University of California by William Jolitz at Berkeley. 4.3BSD Net/2 was an incomplete non-operational release, with portions withheld by the University of California as encumbered (i.e. subject to an AT&T UNIX source code license). The 386BSD releases made to the public beginning in 1992 were based on portions of the 4.3BSD Net/2 release coupled with additional code (see "Missing Pieces I and II", Dr. Dobb's Journal, May–June 1992) written by William and Lynne Jolitz to make a complete operational release.

The port began in 1989 and the first, incomplete traces of the port can be found in 4.3BSD Net/2 of 1991. The port was made possible as Keith Bostic, partly influenced by Richard Stallman, had started to remove proprietary AT&T out of BSD in 1988.[3] The port was first released in March 1992 (version 0.0[1]) and in a much more usable version on July 14, 1992 (version 0.1[4]). The porting process with code was extensively documented in an 18-part series written by Lynne Jolitz and William Jolitz in Dr. Dobb's Journal beginning in January 1991.

大致意思:386BSD主要由伯克利校友Lynne Jolitz和William Jolitz撰写。William Jolitz在加州大学伯克利分校(2.8和2.9BSD)的早期BSD发布方面拥有丰富的经验,在伯克利的William Jolitz为加利福尼亚大学完成了将4.3BSD-Reno和后来的4.3BSD Net / 2移植到Intel 80386的工作。4.3BSD Net / 2是一个不完整的非运营版本,但是受到AT&T对UNIX源代码的约束,不能发布。在1992年3月才完全删除掉UNIX源代码并发布。

    2.3、GNU

GNU是一个自由的操作系统,其内容软件完全以GPL(GNU通用公共许可协议,英文:GNU General Public License,简称GNU GPL、GPL)方式发布。这个操作系统是GNU计划(GNU计划,又译为革奴计划,英文:GNU Project ,是一个自由软件集体协作计划。1983年9月27日由理查德·斯托曼在麻省理工学院公布发起)的主要目标,名称来自GNU's Not Unix的递归缩写,因为GNU的设计类似Unix,但它不包含具著作权的Unix代码。GNU的创始人,理查德·马修·斯托曼,将GNU视为“达成社会目的的技术方法”。

斯托曼的目标是成立一个完全自由的操作系统,他希望计算机用户是能够“自由使用”的。因为在20世纪60年代和70年代-大多数人都能自由学习软件的源代码,自由地与他人分享的软件,可自由修改软件的行为,自由发布的软件的修改后的版本。这种理念,在1985年3月出版的GNU宣言崭露无疑。

1984年1月5日,正式开始开发软件,为了防止这些软件将来可能被主张所有权,影响到自由软件的发展,斯托曼辞去了在实验室的工作。

1984年,开始发展编辑器Emacs等软件。

1985年,发表GNU宣言。理查德·斯托曼创立了自由软件基金会来为GNU计划提供技术、法律以及财政支持。

1989年,发表GNU通用公共许可协议。GNU计划中的其他部分,如编辑器、编译器、shell等都已经完成,独缺操作系统核心。

1990年,自由软件基金会开始正式发展Hurd,作为GNU项目中的操作系统。

作为操作系统,GNU的发展仍未完成,其中最大的问题是具有完备功能的内核尚未被开发成功。GNU的内核称为Hurd,是自由软件基金会发展的重点,但是其发展尚未成熟。在实际使用上,多半使用Linux内核、FreeBSD等替代方案,作为操作系统核心,其中主要的操作系统是Linux的发行版。

    2.4、MINIX

Minix,是一个迷你版的类Unix操作系统,有塔能鲍姆教授为了教学之用二创作,采用微核心设计。它的名称取自英语:Mini UNIX的缩写。与Xinu、Idris、Cohereny和Uniflex等类Unix操作系统类似,派生自Version 7 Unix,但并没有使用任何AT&T的代码。

因为AT&T的政策改变,在Version 7 Unix推出之后,发布新的使用许可协议,将UNIX源代码私有化,在大学中不再能使用UNIX源代码。塔能鲍姆教授为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与UNIX兼容的操作系统,以避免版权上的争议。他以小型UNIX(mini-UNIX)之意,将它称为MINIX。Minix以C语言写成,与Version 7 Unix兼容,全部的代码共约12000行。

第一版于1987年发布,只需要购买它的磁片,就提供完整的源代码给大学系所与学生,做为授课及学习之用。

2000年4月,重新以BSD许可协议发布,称为开放源代码软件。

Minix的版权宣告在早期被认为是相当自由的:塔能鲍姆教授在希望拿Minix作为一个公开的教材与出版社希望保护代码著作权的平衡下,它只要求一个相当低的许可费。单因为它并不是一个开放源代码的许可方案,所以志愿工作者在以GPL方式散布的Linux核心出现后就多转向Linux平台。而Unix也在BSD于AT&T达成协议后,出现了以BSD许可证许可散布FreeBSD开放平台。Minix虽然在2000年改用BSD许可协议,单这时其它的操作系统在功能上大幅超越了它,而它失去了发展成一个广泛使用的操作系统的机会,只留下,如塔能鲍姆教授原来期望的,作为一个开放的教材的用途。直到Minix 3出现后,Minix才有改头换面,现在它是一个朝向小型系统的可靠操作系统。

3、Linux

Linux是一种自由和开放源代码的类UNIX操作系统,严格来说是单指操作系统的内核,因操作系统中包含了许多用户图形接口和其他实用工具。

3.1、Linux内核

Linux内核(英语:Linux kernel),是一种开源的类Unix操作系统宏内核。整个Linux操作系统家族基于该内核部署在传统计算机平台(如个人计算机和服务器,以Linux发型版的形式)和各种嵌入式平台,如路由器、无线接入点、专用小交换机、机顶盒、FTA接收器、只能电视、数字视频录像机、网络附加存储(NAS)等。工作于平板电脑、只能手机及只能手表的Android操作系统同样通过Linux内核提供的服务完成自身功能。尽管于桌面计算机的占用率较低,基于Linux的操作系统统治了几乎从移动设备到主机的其他全部领域。截止2017年11月,世界前500台最强的超级计算机全部使用Linux。

1991年,林纳斯·托瓦兹,一名21岁的就读于芬兰赫尔辛基大学的计算机科学专业学生,基于一些简单的想法,打算编写一个操作系统内核。他通过英特尔80386汇编语言的任务切换器和一个终端驱动程序开始工作。8月25号,他在 comp.os.minix新闻组里发了一封帖子:

我在做个(自由的)操作系统(就是个兴趣爱好,我不会搞得像GNU那么大那么专业),打算让它工作在386 AT平台上。它从四月就开始酝酿了,马上就快好了。我想要那些喜欢或不喜欢minix的人的意见,因为我的系统和它有点类似(同样的文件系统的物理布局——由于实际原因——还有些其他的东西)。

我现在已经移植了bash(1.08)和gcc(1.40), 而且看起来奏效了。这意味着我会在几个月内得到一些实用的东西。“……”是的——它没有任何minix代码,并且它有一个多线程的fs。它可移植(使用386任务切换等),而且它可能永远不会支持除AT硬盘之外的其他东西,因为我只有这些:-(。

“……”它基本上是用C语言写的,但是大多数人可能不会把我写的东西叫做C语言。它使用我能找到的386的每个可以想象的特性,因为它也是一个教我关于386的功能的项目。我前面提到过,它使用内存管理单元来进行分页(还没实现到对硬盘的功能)和分段。这个分段功能使得它真正的依赖于386(每个任务都有64Mb的代码和数据段——4Gb中最多64个任务。如果有人需要超过每个任务64Mb的限制,那将是个麻烦事)。“……”我的一些C语言文件(特别是mm.c)几乎用了和C一样多的汇编。“……”不像minix,我也碰巧喜欢中断,所以中断将在不试图隐藏背后的原因的情形下被处理。

之后,许多人为这个项目贡献了代码。在早期,MINIX社区向 Linux 内核贡献了代码和想法。当时,GNU 项目已经创建了许多自由操作系统所需的组件,但是它自己的内核 GNU Hurd 尚不完整且无法使用;而BSD操作系统还没有摆脱合法的阻碍。因此,尽管早期版本的 Linux 功能有限,但它迅速获得了开发人员和用户。

到1991年9月,Linux内核版本 0.01 在芬兰大学和研究网络(FUNET)的FTP服务器(ftp.funet.fi)上发布。它有10,239行代码。在1991年10月,0.02版本的内核发布了。

1991年12月,0.11版本的内核发布。由于它可以由运行相同内核版本的计算机编译,因此该版本是第一个自托管的Linux 内核。当托瓦兹于1992年2月发布0.12版本时,他采用了GUN通用公共许可证(GPL),而不是以前的自行起草的许可证,原先的许可证不允许商业再分发。

1992年1月19日,第一篇文章提交给新的新闻组 alt.os.linux 出现。1992年3月31日,该新闻组更名为 comp.os.linux。

X Window 系统随后被移植到Linux上,所以在1992年3月,Linux 0.95 是第一个能够运行X的版本。从0.1x到0.9x的版本号大幅跨越是因为期望没有大的缺失部分的版本1.0的即将出现。然而,这被证明是错误的。从1993年到1994年初,出现了0.99版本的15个开发版本。

1994年3月14日,Linux内核1.0.0发布,共176,250行代码。随后的1995年3月,有310,950行代码的 Linux 内核1.2.0发布。

在1996年6月9日发布的 Linux内核2.0版本之后,以2.0为大版本的主要更新有如下这些:

1999年1月25日 - 发布Linux内核2.2.0(1,800,847行代码)

1999年12月18日 - 针对2.2.13的IBM 大型机补丁发布,允许 Linux 内核用于企业级机器

2001年1月4日 - 发布 Linux 内核2.4.0(3,377,902行代码)

2003年12月17日 - 发布 Linux 内核2.6.0(5,929,913行代码)

从2004年开始,发布过程发生了变化,新的内核每隔2-3个月定期发布,编号为2.6.0、2.6.1,直到2.6.39。

2011年7月21日,Torvalds宣布发布Linux内核3.0:“2.6.<大版本> 的日子过去了”。与Linux 2.6.39相比,大的技术变化同版本跃升没有关系;它标志着内核的20周年纪念。基于时间的发布过程保持不变。

2013年6月发布的Linux内核版本3.10包含15,803,499行代码,而2015年6月发布的4.1版本已发展到超过1950万行代码,由近14000名程序员贡献。(另附两张Linux内核地图与Linux简化矩阵图)

Linux简介
Linux内核简化矩阵图
Linux简介
Linux内核地图

3.2、Linux简介

Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证(GPL),任何个人和机构都可以自由地使用Linux所有底层源代码,也可以自由地修改和再发布。大多数Linux系统还包括像GUI的X Window之类的程序。除了一部分专家之外,大多数人都是直接使用Linux发行版,而不是自己选择每一样组件或自行设置。

3.3、历史

在1991年,林纳斯·托瓦兹开始在MINIX上开发Linux内核。

他曾说:当时如果有可用的386BSD,他就可能不会编写Linux。

1991年,林纳斯·托瓦兹在赫尔辛基大学上学时,对操作系统很好奇。他对MINIX只允许在教育上使用很不满(在当时MINIX不允许被用作任何商业使用),于是他便开始写他自己的操作系统,这就是后来的Linux内核。

为MINIX写的软件也可以在Linux内核上使用。后来使用GNU软件代替MINIX的软件,因为使用从GNU系统来的源代码可以自由使用,这对Linux的发展是有益。使用GNU GPL协议的源代码可以被其他项目所使用,只要这些项目使用同样的协议发布。为了让Linux可以在商业上使用,林纳斯·托瓦兹决定更改他原来的协议(这个协议会限制商业使用),以GNU GPL协议来代替。之后许多开发者致力融合GNU元素到Linux中,做出一个有完整功能的、自由的操作系统。

Linux的第一个版本在1991年9月被大学FTP server管理员Ari Lemmke发布在Internet上,最初Torvalds称这个内核的名称为"Freax",意思是自由("free")和奇异("freak")的结合字,并且附上"X"这个常用的字母,以配合所谓的类Unix的系统。但是FTP服务器管理员嫌原来的命名“Freax”的名称不好听,把内核的称呼改成“Linux”,当时仅有10000行程序码,仍必须运行于Minix操作系统之上,并且必须使用硬盘引导;随后在10月份第二个版本(0.02版)发布,同时这位芬兰赫尔辛基的大学生在comp.os.minix上发布一则消息

Hello everybody out there using minix- I'm doing a (free) operation system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.

1994年3月,Linux1.0版正式发布,Marc Ewing成立Red Hat软件公司,成为最著名的Linux经销商之一。

3.4、系统架构

基于Linux的系统是一个模块化的类Unix操作系统。Linux操作系统的大部分设计思想来源于20世纪70年代到80年代的Unix操作系统所创建的基本设计思想。Linux系统使用宏内核,由Linux内核负责处理进程控制、网络,以及外围设备文件系统的访问。在系统运行的时候,设备驱动程序要么与内核直接集成,要么以加载模块形式添加。

Linux具有设备独立性,它内核具有高度适应能力,从而给系统提供了更高级的功能。GNU用户界面组件是大多数Linux操作系统的重要组成部分,提供常用的C函数库Shell,还有许多常见的Unix实用工具,可以完成许多基本的操作系统任务。大多数Linux系统使用的图形用户界面创建在X窗口系统之上,由X窗口(XWindow)系统通过软件工具及架构协议来创建操作系统所用的图形用户界面。

已安装Linux操作系统包含的一些组件:

启动程序:例如GRUBLILO。该程序在计算机开机启动的时候运行,并将Linux内核加载到内存中。

init程序:init是由Linux内核创建的第一个进程,称为根进程,所有的系统进程都是它的子进程,即所有的进程都是通过init启动。init启动的进程如系统服务和登录提示(图形或终端模式的选择)。

软件库包含代码:可以通过运行的进程在Linux系统上使用ELF格式来执行文件,负责管理库使用的动态链接器是“ld-linux.so”。Linux系统上最常用的软件库是GNU C库

用户界面程序:如命令行Shell或窗口环境。

3.5、Linux发行版

Linux发行版指的就是通常所说的“Linux操作系统”,它一般是由一些组织、团体、公司或者个人制作并发行的。Linux内核主要作为Linux发行版的一部分而使用。通常来讲,一个Linux发行版包括Linux内核,以及将整个软件安装到计算机上的一套安装工具,还有各种GNU软件,和其他的一些自由软件,在一些Linux发行版中可能会包含一些专有软件。发行版为许多不同的目的而制作,包括对不同计算机硬件结构的支持,对普通用户或开发者使用方式的调整,针对实时应用或嵌入式系统的开发等等。目前,超过三百个发行版被积极的开发,最普遍被使用的发行版有大约十二个。较为知名的有DebianUbuntuFedoraopenSUSE等。

一个典型的发行版包括:Linux内核,GNU和各种系统工具,命令行Shell,图形界面底层的X窗口系统和上层的桌面环境等。桌面环境有如KDEGNOME等,并包含数千种从办公包编译器文本编辑器,小游戏,儿童教育软件,到科学工具的应用软件。

很多发行版含有LiveCD的方式,就是不需要安装,放入系统光盘或其它介质进行启动,就能够在不改变现有系统的情况下使用。比较著名的有Damn Small LinuxKnoppix等。LiveCD的相关技术进步至此,很多的发行版本身的安装光盘也有LiveCD的功能。

3.6、Linux的应用

今天各种场合都有使用各种Linux发行版,从嵌入式设备到超级计算机(Super Computer),并且在服务器领域确定了地位,通常服务器使用LAMP组合。在家庭与企业中使用Linux发行版的情况越来越多。并且在政府中也很受欢迎,巴西联邦政府由于支持Linux而世界闻名。有新闻报道俄罗斯军队自己制造的Linux发行版的,做为G.H.ost项目已经获取成果.印度的Kerala联邦计划在向全联邦的高中推广使用Linux。中华人民共和国为获取技术独立,在龙芯过程中排他性地使用Linux。在西班牙的一些地区开发了自己的Linux发行版,并且在政府与教育领域广泛使用,如Extremadura地区的gnuLinExAndalusia地区的Guadalinex葡萄牙同样使用自己的Linux发行版Caixa Mágica,用于Magalh?es笔记本电脑和e-escola政府软件。法国和德国同样开始逐步采用Linux。

传统的Linux用户一般都是专业人士。他们愿意安装并设置自己的操作系统,往往比其他操作系统的用户花更多的时间在安装并设置自己的操作系统。这些用户有时被称作“黑客”或是“极客”。

使用Linux主要的成本为移植、培训和学习的费用,早期由于会使用Linux的人较少,并且在软件设计时并未考虑非专业者的使用,导致这方面费用极高。但这方面的费用已经随着Linux的日益普及和Linux上的软件越来越多、越来越方便而降低,但专业仍是使用Linux的主要成本。

然而随着Linux慢慢开始流行,有些原始设备制造商(OEM)开始在其销售的计算机上预装上Linux,Linux的用户中也有了普通计算机用户,Linux系统也开始慢慢出现在个人计算机操作系统市场。Linux在欧洲、美国和日本的流进程度较高,欧美地区还发行Linux平台的游戏和其他家用软件。Linux开源社群方面也是以欧洲、美国、日本等发达国家的人士居多。

每个孩子一台笔记本电脑这一项目正在催生新的更为庞大的Linux用户群,计划将包括发展中国家的几亿学童、他们的家庭和社区。在2007年,已经有六个国家订购了至少每个国家一百万台以上免费发放给学生。GoogleRed HateBay是该项目的主要支持者。

基于其低廉成本与高度可设置性,Linux常常被应用于嵌入式系统,例如机顶盒移动电话移动设备等。在移动电话上,Linux已经成为IOS的主要竞争者;而在移动设备上,则成为Windows CEPalm OS外之另一个选择。目前流行的TiVo数字摄影机使用了经过定制化后的Linux。此外,有不少硬件式的网络防火墙路由器,例如部分LinkSys的产品,其内部都是使用Linux来驱动、并采用了操作系统提供的防火墙及路由功能。

3.7、个人计算机

转换操作系统的开销:自由开源意识形态与商业用途的冲突、缺乏强而有力的推广厂商、缺乏对特殊的硬件和应用程序的支持、计算机技术人员不愿再花费时间重复学习、对已有平台的依赖,是制约Linux被采纳的主要因素。

目前能在Windows或Mac OS上运行的应用软件大部分都没有Linux的版本,不过在Linux平台上通常可以找到类似功能的应用软件。大多数在Windows平台上广泛使用的自由软件都有相应的Linux版本,例如Mozilla FirefoxApache OpenOfficePidginVLCGIMP;部分流行的专有软件也有相应的Linux版本,如Adobe Flash PlayerAdobe ReaderGoogle EarthNero Burning ROMOperaMapleMATLABSkypeMayaSPSSGoogle Chrome

另外,相当多的Windows应用程序可以通过Wine和一些基于Wine的项目如CrossOver正常运行和工作。如Microsoft OfficeAdobe Photoshop暴雪娱乐的游戏、Picasa其中对于Photoshop的Crossover(Wine)兼容性工作有Disney、DreamWorks、Pixar投资支持,等。Google大力参与Wine项目改进,Picasa的GNU/Linux版本也是经Wine测试的Windows平台编译版本。

整个亚洲,比较缺乏对Linux的支持,硬件和应用程序皆只考量微软操作系统设计的需求。例如:Internet ExplorerActiveX需求、Microsoft Office兼容性、网络游戏以及一般用户都倾向于使用Windows

但是,Linux下也有相当多不能在Windows平台下运行的软件,主要是依靠X窗口系统和其他Windows无法利用的资源,或者是因为稳定性等其他方面的考虑并不准备支持Windows。不过近年来,也不断向其移植。有如KDE SCCinepaint正在进行向Windows的移植。Linux使用的增多也使得Windows开源软件(Open Source)向Linux移植,比如Filezilla

3.8、上网本

Linux发行版同样在上网本市场很受欢迎,像ASUS Eee PCAcer Aspire One,销售时安装有订制的Linux发行版。

3.9、服务器、主机和超级计算机

Linux发行版一直被用来作为服务器的操作系统,并且已经在该领域中占据重要地位。根据2006年9月Netcraft的报告显示,十个最大型的网络托管公司有八个公司在其Web服务器运行Linux发行版。

Linux发行版是构成LAMP(Linux操作系统,Apache,MySQL,Perl / PHP / Python)的重要部分,LAMP是一个常见的网站托管平台,在开发者中已经得到普及。

Linux发行版也经常使用作为超级计算机的操作系统,2010年11月公布的超级计算机前500强,有459个(91.8%)运行Linux发行版。曾经是世界上最强大的超级计算机——IBM的红杉(IBM Sequoia),已于2011年交付劳伦斯利福摩尔国家实验室,并于2012年6月开始运作,也是选择Linux作为操作系统。

3.10、嵌入式设备

Linux的低成本、强大的定制功能以及良好的移植性能,使得Linux在嵌入式系统方面也得到广泛应用。流行的TiVo数字视频录像机还采用了定制的Linux,思科在网络防火墙路由器也使用了定制的Linux。Korg OASYS、Korg的KRONOS、雅马哈的YAMAHA MOTIF XS/Motif XF音乐工作站、雅马哈的S90XS/S70XS、雅马哈MOX6/MOX8次合成器、雅马哈MOTIF-RACK XS音源模块,以及Roland RD-700GX数码钢琴均运行Linux。Linux也用于舞台灯光控制系统,如WholeHogIII控制台。

智能手机平板电脑等移动设备方面,Linux也得到重要发展,基于Linux内核的Android操作系统已经超越诺基亚Symbian操作系统,成为当今全球最流行的智能手机操作系统。在2010年第三季度,销售全球的全部智能手机中使用Android的占据25.5%(所有的基于Linux的手机操作系统在这段时间为27.6%)。

从2007年起,手机和掌上计算机上运行基于Linux的操作系统变得更加普遍,例如:诺基亚 N810OpenMoko的Neo1973、摩托罗拉的ROKR E8。Palm(后来被HP公司收购)推出了一个新的基于Linux的webOS操作系统,并使用在新生产的Palm Pre智能手机上。

MeeGo是诺基亚和英特尔于2010年2月联合推出的基于Linux的操作系统,诺基亚也推出了使用MeeGo操作系统的N9手机。2011年9月28日,继诺基亚宣布放弃开发MeeGo之后,英特尔也正式宣布将MeeGo与LiMo合并成为新的系统TizenJolla Mobile公司成立并推出了由MeeGo发展而来的Sailfish操作系统。2012年,Mozilla推出基于Linux内核的Firefox OS操作系统。

3.11、使用比例

很多开源软件的定量研究聚焦在市场占有率(虽然多数不算作市场中的商品)和可靠性,包括数不清的Linux分析报告。Linux份额成长迅速。IDC的2008年第二季度报告指出,Linux在所有服务器市场的市占率已经达到29%,比该研究机构在2007年的调查大幅增加了12个百分点。这个估计数字基于Linux服务器的销售额。

所以,Linux的市占率是不可小觑的。Netcraft报告,在2010年二月,每10台可靠的服务器中Linux发行版占6台,FreeBSD占2台,Windows占1台。而DebianCentOS两个至关重要的发行版并不销售。

3.12、评价

正面

1、开放源代码的Linux可以让知识延续下去,新兴的软件公司可以从开放源代码上快速、低价的创建专业能力,丰富市场的竞争,防止独霸软件巨兽的存在。

2、个人使用很少有版权问题,绝大多数都是免费使用,几乎无所谓盗版问题。

3、新的Linux发行版大多数软件都有服务器的服务,只要点击就可以自动下载、安装经过认证的软件,不需要到市面购买、安装。

4、Linux学习的投资有效时间较长。旧版软件、系统都还是存在,有源代码可以派生、分支,维护周期普遍比Windows长很多。就算被放弃,还是可以凭借源代码派生。新的软件更新发展多样化,容易养成用户习惯掌握原理,而不是养成操作习惯。

5、强大的Shell脚本支持,容易组合出匹配需求的环境或创造自动程序。

6、默认安全设置相对于目前主流的Windows操作系统安全很多。Windows操作系统为了非专业用户降低了默认安全性的设置,导致系统容易受到木马、病毒的侵害。盗版的Windows更糟糕,可能随盗版操作系统捆绑木马恶意程序,部分默认超级用户(Administrator)登录、关闭安全更新等问题导致安全性更差。

负面

1、BSD的开发人员曾经批评过Linux内核开发人员过于重视新功能的添加而不是踏踏实实的把代码写好、整理好。

2、Minix爱好者认为微内核是将来技术发展的方向,Linux在技术上是落伍陈旧的。

3、软硬件支持性较差。大部分的软、硬件厂商没有或者不会优先开发Linux平台的版本,或者Linux平台的版本功能较少,致使可用的应用程序、硬件周边支持性相较于WindowsMac平台差。

4、相当多的发行版(超过200个以上),使程序开发者无法针对所有发行版做测试,使用Linux平台的应用软件安装在非主流发行版可能遭遇预料之外的问题或甚至于无法使用。

5、Linux系统及相关应用软件主要是由黑客程序员及其它Linux爱好者共同合作开发出来的,所以缺少了商业软件基于商业利益而调整操作界面使之更适合不同用户的行为。对Linux使用方式的不习惯,以及不同软件操作方式缺乏一致性使得用户产生Linux系统难以使用的感受。

Linux简介
Linux族谱

Linux简介

PS:都是盗用维基百科的内容,有能力的直接去维基百科看吧,C+C&C+V的我都要疯了。

虽然复制粘贴了这么多,这篇流水账看了对编程和Linux的使用并没什么用,如果说有点用的那就是Linux内核图和LAMP,然而能到学习Linux内核的地步,也不用来看我这个小白盗用的流水账了。我个人认为工具就是工具,看你用在什么地方和怎么去使用它,如果只是操作,没必要去了解它到底是怎么发明出来的,每一部分的运作、结构、原理等都没必要太了解,如果是做维修的,要保证它如何才能安全正确的运行,而不太需要了解应用层该如何解决。当然如果有机会,还是要有底蕴的。

最后也是写个我自己的:自己会的,别人不一定会,哪怕自己认为很简单,认为简单的原因是自己会了,要有自信心。很多时候,没必要准备充分了以后才去做,你永远不知道你准到什么程度才算是充分,在实践中学习、发现问题、解决问题从而能真正的提升自己。


人们在一眨眼间做出的 决策,其内涵远比表相 来的复杂。 《Bink眨眼之间》