Linux

       Linux,是一类Unix计算机操作系统的统称。该操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。
      严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行包
         Linux
                    Linux
包含大量的软件,比如软件开发工具、数据库(例如PostgreSQL、MySQL)、网络服务器(例如Apache)、X Window、桌面环境(例如GNOME和KDE)、办公包(例如OpenOffice.org)、脚本语言(例如Perl、PHP和Python)等等。
       Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。
      现在,Linux已经成为了一种受到广泛关注和支持的操作系统。包括国际商用机器公司和惠普、戴尔在内的一些信息业巨头也陆续支持Linux,并且成立了一些组织支持其发展,如Open Invention Network(OIN)(成员有IBM索尼,NEC,Philips,Novell,Red hat等)购买了微软专利,允许任何个体以开放的原则使用。很多人认为,和微软Windows相比,作为自由软件的Linux具有低软件成本,高安全性,更加可信赖等优势,但是同时却需要更多的人力成本。

Linux-概述

  Linux 是一种类似于UNIX 计算机操作系统。它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet 网络,并经过全世界各地计算机爱好者的共同努力下,现已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长。Linux 操作系统的诞生、发展和成长过程始终依赖着以下五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU 计划、POSIX 标准和Internet 网络。
  下面主要根据这五个基本线索来追寻一下Linux 的开发历程,它的酝酿过程,最初的发展经历。首先分别介绍其中的四个基本要素(UNIX、MINIX、GNU 和POSIX,Internet 的重要性显而易见,所以不用对其罗嗦),然后根据Linux 的创始人Linus Torvalds 从对计算机感兴趣而自学计算机知识,到心里开始酝酿编制一个自己的操作系统,到最初Linux 内核0.01 版公布,以及从此如何艰难地一步一个脚印地在全世界hacker 的帮助下最后推出比较完善的1.0 版本这段时间的发展经过,也即对Linux 的早期发展历史进行详细介绍。
  绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了Shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。正因为如此,GNU计划的开创者理查德·马修·斯托曼博士提议将Linux操作系统改名为GNU/Linux。但有些人只把操作系统叫做"Linux"。  大多数系统还包括了像提供GUI界面的XFree86之类的曾经运行于BSD的程序。  除了一部分专家之外,大多数人都不自己选择每一样组件或自行设置,而是直接使用Linux套件。   1983年,理察·马修·斯托曼(Richard Stallman)创立了GNU计划(GNU Project)。这个计划有一个目标是为了发展一个完全免费自由的 Unix-like 操作系统。自1990年代发起这个计划以来,GNU 开始大量的产生或收集各种系统所必备的元件,像是——函式库(libraries)、编译器(compilers)、侦错工具(debuggers)、文字编辑器(text editors)、网页服务器(web server),以及一个Unix的使用者接口(Unix shell)——除了执行核心(kernel)仍然付阙外。1990年,GNU计划开始在马赫微核(Mach microkernel)的架构之上开发系统核心,也就是所谓的GNU Hurd,但是这个基于Mach的设计异常复杂,发展进度则相对缓慢。  Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途,同时它们都尽可能被编写得更好。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。
  Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的,当时他并不满意Minix这个教学用的操作系统。最初的设想中,Linux 是一种类似Minix这样的一种操作系统。Linux的第一个版本在1991年9月被大学FTP server管理员Ari Lemmke发布在Internet上,最初Torvalds 称这个核心的名称为 "Freax" ,意思是自由( "free") 和奇异( "freak") 的结合字,并且附上了"X"这个常用的字母,以配合所谓的 Unix-like 的系统。但是FTP server管理员嫌原来的命名“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.

Linux-历史

  1983年,理查德·马修·斯托曼创立了GNU计划。这个计划有一个目标是为了发展一个完全自由的类Unix操作系统。自1990年代发起这个计划以来,GNU开始大量的产生或收集各种系统所必备的组件,像是——库、编译器、调试工具、文本编辑器、网页服务器,以及一个Unix的用户界面(Unix shell)——除了运行内核(kernel)仍然付阙外。1990年,GNU计划开始在马赫微核(Mach microkernel)的架构之上开发系统内核,也就是所谓的GNU Hurd,但是这个基于Mach的设计异常复杂,发展进度则相对缓慢。
  Linux内核最初只是由芬兰人林纳斯·托瓦兹在赫尔辛基大学上学时出于个人爱好而编写的,当时他并不满意Minix这个教学用的操作系统,部分因为只能在有限硬件上运行。最初的设想中,Linux是一种类似Minix这样的一种操作系统。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.
  Linux的历史是和GNU紧密联系在一起的。从1983年开始的GNU计划致力于开发一个自由并且完整的类Unix操作系统,包括软件开发工具和各种应用程序。到1991年Linux内核发布的时候,GNU已经几乎完成了除了系统内核之外的各种必备软件的开发。在Linus Torvalds和其他开发人员的努力下,GNU组件可以运行于Linux内核之上。整个内核是基于GNU通用公共许可,也就是GPL(GNU General Public License)的,但是Linux内核并不是GNU计划的一部分。1994年3月,Linux1.0版正式发布,Marc Ewing成立了Red Hat软件公司,成为最著名的Linux经销商之一。
  早期Linux的开机管理程序(boot loader)是使用LILO(Linux Loader),早期的LILO存在着一些难以容忍的缺陷,例如无法识别1024柱面以后的硬盘空间,后来新增GRUB(GRand Unified Bootloader)克服了这些缺点,具有‘动态搜索内核文件’的功能,可以让您在开机的时候,可以自行编辑您的开机设置系统文件,通过ext2或ext3文件系统中加载Linux Kernel(GRUB通过不同的文件系统驱动可以识别几乎所有Linux支持的文件系统,因此可以使用很多文件系统来格式化内核文件所在的扇区,并不局限于ext文件系统)。
  Linux的标志和吉祥物是一只名字叫做Tux的企鹅,标志的由来是因为Linus在澳大利亚时曾被一只动物园里的企鹅咬了一口,便选择了企鹅作为Linux的标志。更容易被接受的说法是:企鹅代表南极,而南极又是全世界所共有的一块陆地。这也就代表Linux是所有人的Linux。
  Linux的注册商标是Linus Torvalds所有的。这是由于在1996年,一个名字叫做William R. Della Croce的律师开始向各个Linux发布商发信,声明他拥有Linux商标的所有权,并且要求各个发布商支付版税,这些发行商集体进行上诉,要求将该注册商标重新分配给Linus Torvalds。Linus Torvalds一再声明Linux是免费的,他本人可以卖掉,但Linux绝不能卖。

Linux-基本概念

  简单地说,Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于x86系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。
  linux读音:['liniks]
  Linux学习的基本概念  (1)磁盘及分区  一块硬盘可以分为一个主分区和若干个扩展分区(逻辑分区),Linux操作系统可以安装在任何地方,因此许多机器可以做成多个windows系统及Linux多启动。
  在Linux下没有盘符的概念,不管是什么存储盘,在它里面都是一样对待的,系统里只有从根目录往下一层层的目录,一个盘可以多个目录,一个目录也可能会跨多个盘。
  Ext2:   Ext2是GNU/Linux系统中标准的文件系统。这是Linux中使用最多的一种文件系统,它是专门为Linux设计的,拥有极快的速度和极小的CPU占用率。Ext2既可以用于标准的块设备(如硬盘),也被应用在软盘等移动存储设备上。
  Ext3:   Ext3是Ext2的下一代,也就是保有Ext2的格式之下再加上日志功能。Ext3是一种日志式文件系统(Journal File System),最大的特点是:它会将整个磁盘的写入动作完整的记录在磁盘的某个区域上,以便有需要时回溯追踪。当在某个过程中断时,系统可以根据这些记录直接回溯并重整被中断的部分,重整速度相当快。该分区格式被广泛应用在Linux系统中。
  Ext4:   ext4是ext3文件系统的后继版本。ext4原始的开发目标是一系列的向下兼容ext3、移除其64位限制与提升其效能的延伸包。然而,某些Linux开发者因稳定性原因而拒绝将这些延伸包应用在ext3上,并要求其作为ext3的分支,改名为ext4并另行开发,以免影响到目前的ext3用户。该要求被接受以后,ext3维护者Theodore Ts'o在2006年6月28日公开了ext4的开发计划。
  Linux swap:   它是Linux中一种专门用于交换分区的swap文件系统。Linux是使用这一整个分区作为交换空间。一般这个swap格式的交换分区是主内存的2倍。在内存不够时,Linux会将部分数据写到交换分区上。
  VFAT:   VFAT叫长文件名系统,这是一个与Windows系统兼容的Linux文件系统,支持长文件名,可以作为Windows与Linux交换文件的分区。  (2)理解Linux文件系统标准  /:根目录,系统中所有的目录都是从根目录开始。
  /bin: 存放常用命令。
  /boot: 引导核心的程序目录
  /dev: 外部设备名
  /etc: (etcetera)系统管理所要的配置文件和子目录
  /home:存放用户主目录的地方,一般是/home/用户名。其他目录有ftp、httpd、samba等。
  /lib:(library)系统基本的动态链接库
  /lost+found
  /opt :optional(可以选择的)
  /proc: 虚拟系统,是由系统初起时内存中产生的
  /root:超级用户默认的主目录;
  /sbin:系统管理员使用的系统管理程序;
  /tmp: 存放各程序执行时所产生的临时文件;
  /usr:占空间最大的目录,用户的很多应用程序和文件几乎全在这个目录中;
  /var:存放一些系统记录文件和配置文件;  (3)掌握Linux下设备的使用方法  (4)理解LILO和GRUB的用途  LILO全称为LInux LOader
  GRUB全称为GRand Unified Boot loader
  是位于硬盘引导扇区的一个小程序,是引导Linux系统内核的最常见的方式;
  可以用来引导多个操作系统;可以同时支持多个不同的系统内核映像;
  为每个系统内核映像提供了密码保护;
  支持位于不同磁盘和分区中的引导扇区、映象文件和启动映像;  (5)普通用户与超级用户  普通用户可以在其权限许可的范围内使用系统资源,而超级用户(用户名为root)不仅可以使用系统中的所有资源而且可以管理系统资源。  (6)工作方式  字符工作方式和图形工作方式。

Linux-应用

  过去,Linux主要被用作服务器的操作系统,因为它的廉价、灵活性及Unix背景。传统上,以Linux为基础的“LAMP(Linux, Apache, MySQL, Perl/PHP/Python的组合)”技术,除了已在开发者群体中广泛流行,它亦是现时提供网站服务供应商最常使用的平台。
  基于其低廉成本与高度可设置性,Linux常常被应用于嵌入式系统,例如机顶盒、移动电话及行动设备等。在移动电话上,Linux已经成为Symbian OS的主要竞争者;而在行动设备上,则成为Windows CE与Palm OS外之另一个选择。目前流行的TiVo数码摄影机使用了经过客制化后的Linux。此外,有不少硬件式的网络防火墙及路由器,例如部份LinkSys的产品,其内部都是使用Linux来驱动、并采用了操作系统提供的防火墙及路由功能。
  采用Linux的超级电脑亦愈来愈多,根据2008年11月的TOP500超级电脑列表,现时世上最快速的超级电脑使用Linux作为其操作系统。而在表列的500套系统里,采用Linux为操作系统的,占了439组(即87.8%)。
2006年开始发售的SONY PlayStation 3亦可使用Linux的操作系统,它有一个能使其成为一个桌面系统的Yellow Dog Linux。之前,Sony亦曾为他们的PlayStation 2推出过一套名为PS2 Linux的DIY组件。Ubuntu自9.04版本,恢复了PPC支持(包括PlayStation 3)。
  而随着OLPC的XO-1,华硕的Eee PC等低价电脑的推行,许多人乐观的认为在低端PC市场,linux的市场占有率正在快速的增长[2]。但在Windows进入此一市场后,Linux的市占率快速下滑。现在Windows系统在所有的PC市场中,都占有绝对优势。

·桌面使用

  转换操作系统的开销:自由开源意识形态与商业用途的冲突、缺乏强而有力的推广厂商、缺乏对特殊的硬件和应用程序的支持、电脑技术人员不愿再花费时间重复学习、对已有平台的依赖,是制约Linux被采纳的主要因素。
  目前能在Windows或Mac OS上运行的应用软件大部分都没有Linux的版本,但是常用软件大都可以在Linux平台上找到类似功能的应用软件。
  尽管如此,大多数在Windows平台上广泛使用的自由软件都有相应的Linux版本,例如Mozilla Firefox,Openoffice.org,Pidgin,VLCGIMP 。部分流行的桌面专有软件也有相应的Linux版本,如Adobe Flash Player,Acrobat Reader,Google Earth、Google桌面、Nero Burning ROM、Opera、RealPlayer、Skype、腾讯QQ、Maya、SPSS、google Chrome。
  另外,相当多的Windows应用软件可以通过WINE和一些基于WINE的项目如CrossOver正常运行和工作,比如Microsoft Office、Adobe Photoshop、暴雪的游戏、Picasa其中对于Photoshop的Crossover(Wine)兼容性工作有Disney、DreamWorks、Pixar投资支持,等。Google大力帮助WINE项目进行微软API的分析工作。Picasa的GNU/Linux版本也是经WINE测试的WINDOWS编译版本。
  整个亚洲,特别缺乏对Linux的支持,硬件和应用程序皆只考量微软视窗操作系统设计的需求。例如:Internet Explorer及ActiveX需求、Microsoft Office兼容性、网络游戏以及一般用户都倾向于使用Windows。
  但是,Linux下也有相当多不能在Windows平台下运行的软件,主要是依靠X Window系统和其他Windows无法利用的资源,或者是因为稳定性等其他方面的考虑并不准备支持Windows。不过近年来,也不断向其移植。有如KDE SC、Cinepaint正在进行向Windows的移植。Linux使用的增多也使得Windows开源软件向Linux移植的比如,Paint-Mono(通过MONO移植的Paint.Net),Filezilla。 另外,GNOME桌面环境并不准备支持Windows。

·游戏使用

  电子游戏是一个Linux缺少支持的方面,游戏软件的多样性不同于其他类型,和其他方面一样,只有少数软件商开发Linux游戏程序。id Software和Epic Games是其中著名的两个。2001年之前存在的Loki Games、现在的Linux Game Publishing致力于移植Windows游戏,并授权销售,但是因为使用了类似DRM的技术而受到非议。
  Loki Games和id合作开发的Loki installer至今仍是许多游戏使用的打包方式。此外还有提供通用安装程序的其他软件商,一些独立游戏开发者提供Linux版本的游戏;而网页游戏和Java游戏也常常有对Linux的支持。
  Linux一直有着自由软件、开源软件的支持,在Linux下,人们更有可能接触开源游戏,和Linux开发形式一样,这些游戏大多为多人游戏或个人休闲游戏,Linux发行版的软件仓库往往保存有数量可观的此类游戏,尤其是后者;多人游戏主要类型为网络3D第一人称射击和MMO类型网游。

Linux-Linux与其他操作系统区别

  Linux可以与MS-DOS、OS/2、Windows等其他操作系统共存于同一台机器上。它们均为操作系统,具有一些共性,但是互相之间各有特色,有所区别。   目前运行在PC机上的操作系统主要有Microsoft的MS-DOS、Windows、Windows NT、IBM的OS/2等。早期的PC机用户普遍使用MS-DOS,因为这种操作系统对机器的硬件配置要求不高,而随着计算机硬件技术的飞速发展,硬件设备价格越来越低,人们可以相对容易地提高计算机的硬件配置,于是开始使用Windows、Windows NT等具有图形界面的操作系统。Linux是新近被人们所关注的操作系统,它正在逐渐为PC机的用户所接受。那么,Linux与其他操作系统的主要区别是什么呢?下面从两个方面加以论述。
Linux与MS-DOS之间的区别
   在同一系统上运行Linux和MS-DOS已很普遍,就发挥处理器功能来说,MS-DOS没有完全实现x86处理器的功能,而Linux完全在处理器保护模式下运行,并且开发了处理器的所有特性。Linux可以直接访问计算机内的所有可用内存,提供完整的Unix接口。而MS-DOS只支持部分Unix的接口。
  就操作系统的功能来说,MS-DOS是单任务的操作系统,一旦用户运行了一个MS-DOS的应用程序,它就独占了系统的资源,用户不可能再同时运行其他应用程序。而Linux是多任务的操作系统,用户可以同时运行多个应用程序。
  Linux与OS/2、Windows、Windows NT之间的区别
  从发展的背景看,Linux与其他操作系统的区别是,Linux是从一个比较成熟的操作系统发展而来的,而其他操作系统,如Windows NT等,都是自成体系,无对应的相依托的操作系统。这一区别使得Linux的用户能大大地从Unix团体贡献中获利。因为Unix是世界上使用最普遍、发展最成熟的操作系统之一,它是七十年代中期发展起来的微机和巨型机的多任务系统,虽然有时接口比较混乱,并缺少相对集中的标准,但还是发展壮大成为了最广泛使用的操作系统之一。无论是Unix的作者还是Unix的用户,都认为只有Unix才是一个真正的操作系统,许多计算机系统(从个人计算机到超级计算机)都存在Unix版本,Unix的用户可以从很多方面得到支持和帮助。因此,Linux做为Unix的一个克隆,同样会得到相应的支持和帮助,直接拥有Unix在用户中建立的牢固的地位。
  从使用费用上看,Linux与其他操作系统的区别在于Linux是一种开放、免费的操作系统,而其他操作系统都是封闭的系统,需要有偿使用。这一区别使得我们能够不用花钱就能得到很多Linux的版本以及为其开发的应用软件。当我们访问Internet时,会发现几乎所有可用的自由软件都能够运行在Linux系统上。有来自很多软件商的多种Unix实现,Unix的开发、发展商以开放系统的方式推动其标准化,但却没有一个公司来控制这种设计。因此,任何一个软件商(或开拓者)都能在某种Unix实现中实现这些标准。OS/2和Windows NT等操作系统是具有版权的产品,其接口和设计均由某一公司控制,而且只有这些公司才有权实现其设计,它们是在封闭的环境下发展的。

Linux-评价

·正面

  所有人都可以看到Linux的源代码,修改并向开源组织提交修改,因此相比闭源软件而言开源软件可能更加安全

·负面

  Windows桌面用户在尝试Linux的过程中,不少因为一下子不适应而发牢骚或者放弃;   部分Linux系统管理员、开发人员在接触Solaris或BSD后态度改变偏爱于这两种Unix。   BSD的开发人员曾经批评过Linux内核开发人员过于重视新功能的添加而不是踏踏实实的把代码写好整理好;   Solaris系统管理员则认为SMF、ZFS、DTrace等Solaris特有工具使得Solaris比Linux更加优秀;   Minix爱好者认为微内核是将来技术发展的方向,Linux在技术上是落伍陈旧的。

Linux-国内的Linux学习网站

  Linux中国 http://www.linux-cn.com
  LUPA开源社区 http://www.lupaworld.com
  Linux基金会 http://www.linux.org/
  Linux内核官方发布站 http://www.kernel.org/
  GNU项目首页 http://www.gnu.org/
  Debian GNU/Linux http://www.debian.org/
  Ubuntu http://www.ubuntu.com/
  Ubuntu中国http://www.ubuntu.org.cn/