首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

现在Linux已进入百家争鸣的战国时期,而Ubuntu更可以说是其中的后起之秀与佼佼者,也是聚焦最多人目光的Linux之一。因此本书先就Linux与Ubuntu的关联性作一介绍,让每位读者在进入Ubuntu的世界前,清楚地了解它们的相似与个别性。这也是学习Linux与Ubuntu最重要的敲门砖。

1.1   Linux是什么

谈到Linux的起源,就不得不提及1991年10月,在USNET新闻组——comp.os.minix上的一篇毫不起眼的文章。它由芬兰一位署名为Linus Torvalds的赫尔辛基大学学生所发表,当时这位年轻人才21岁。这篇文章的内容如下:

Hello everybody out there using minix – I’m doing a(free)operating system(just a hobby,won’t be big and professional like gnu)for 386(486)AT clones. This has been brewing since April,and is starting to get ready. I’d like any feedback on things people like /dislike in minix,as my OS resembles practical reasons among other things.

I’ve currently ported bash(1.08)and gcc(1.40),and things seem to work. This implies that I’ll get something practical within a few months,and I’d like to know what feathers most people would want. Any suggestions are welcome,but I won’t promise I’ll implement them:-)

          Linus(torvalds@kruuna.helsinki.fi)

Ps. Yes – it’s free of any minix code,and it has a multi-threaded fs. It is NOT portable(uses 386 task switching etc). and it probably never will support anything other than AT-hard-disks,as that’s all I have:-(

也就是因为这篇文章,Linux才开始了以后的快速发展。其实此时发表的版本,也就是第一个Linux正式版本——0.0.2版,虽说是正式版本,但其稳定性和功能仍不十分完善。

从以上这篇文章我们也能了解Linus Torvalds本人设计时的初衷,以及Linux创造时的精神:

  它的构思源自Andrew Tanenbaum开发的Minix。这是一种免费的、小型的类UNIX操作系统,您可到以下网站获得详细资料:
http://www.cs.vu.nl/~ast/minix.html

  与GNU一样,Linux是一个免费的操作系统。

  最初是以386(486)平台为设计目标,但目前支持的平台增加了许多。例如,Compaq Alpha AXP、Sun SPARC and UltraSPARC、Motorola 68000、PowerPC、PowerPC64、ARM、Hitachi SuperH、IBM S/390、MIPS、HP PA-RISC、Intel IA-64、DEC VAX、AMD x86-64和CRIS等机器目前都可运行Linux。

  操作系统中使用了bash的Shell和gcc编译器。

  没有使用任何Minix程序代码。

  使用多线程(Multi-Threads)的文件系统设计。

  不具有移植性。

  可能只支持AT硬盘。

Linux就是在这么简单的想法下开始酝酿,同时因为它是以GPL(General Public License)的方式发行,所以任何人可用任何形式来复制与传播Linux。

随着投入研究和开发的人数激增,Linux的功能也愈趋完善,直至目前为止,它已可与微软操作系统相抗衡。

值得一提的是,虽然Linux的成功没有为Linus Torvalds带来财富,但他的成就已为电脑界树立了良好的典范。这也使他在电脑科技发展史上占有一席之地。

 有些人常会把“免费”和“开源”软件混淆。根据开放软件运动大师Richard M. Stallman的解释,所谓的“开源”软件,并不是“免费”软件。开源软件(Open Source)是指,在软件发行时附上原始的程序代码,并授权允许用户更改。

由于Linux是由Linus(见图1-1)开发的,所以这个操作系统的名称自然也以Linus’s unix来命名,它的英语发音类似于“利尼克思”,而瑞典文发音为“利new克斯”(因为Linus Torvalds是瑞典籍芬兰人,所以他的母语为瑞典文)。

单击下面的链接,可以听到Linus亲自念Linux的发音:

ftp://dogma.freebsd-uk.eu.org/pub/mark/linux.wav

同时Linux以一只可爱的胖企鹅作为吉祥图案,它的名字叫做Tux。为何Linux的吉祥物是一只胖企鹅呢?这里有一个小典故。

有一次Linux之父Linus Torvalds去澳洲旅游,见到一些企鹅,但是当Linus伸手去抚摸其中一只时,不幸被咬了一口。不过Linus仍对这只小动物情有独钟,因此后来有人提出要为Linux设计一个标志时,Linus就独排众议选了现在大家看到的胖企鹅——Tux,如图1-2所示。

图1-1  Linux之父——Linus Torvalds

图1-2  Linux吉祥图案——Tux

由于Linux是由全世界许多志愿者自发进行改良的,所以它更新的速度很快,在短短十年内,出现了不下200种的更新版本,而每种版本都会针对上一个版本的特定缺失提出解决方案。

Linux 发行版

在Linux中,最主要的部分称为“核心”(Kernel),它就是Linux的主体。

Kernel负责控制硬件设备、文件系统、进程调度和其他工作,但是并不包括用户应用程序,如编辑软件、多媒体工具、系统管理工具或网络工具等。

然而一个称职的操作系统,除了具有强大的核心功能外,其他的应用程序也是不可或缺的组件,否则空有一个好的架构,也无法发挥实际的功效。

就因为Linux免费的核心,以及允许用户或厂商自行搭配其他应用程序的特性,目前世界上已超过百种以上不同的组合。这些不同厂商发行的核心与应用程序软件包就称为Linux发行版。

但是有一个概念很重要,就是不论Linux发行版的名称或开发厂商是什么,它们都同属于Linux大家庭,没有任何Linux发行版拥有发表核心的权利,所有的核心都是源自Linus Torvalds的Linux核心,它们之间只是包含的软件种类和数量不同而已。

每种Linux 发行版都各有其特长之处,用户应该按照实际的需求,以及管理上的方便来决定使用何种Linux 发行版。

Linux的优点

使用Linux最基本的优点就是经济,因为用户不再需要花费可观的版权费用,便可使用功能强大的操作系统和内建的应用程序。除了经济的好处外,Linux还包括以下优点:

 多用户多任务

可以在Linux上同时执行多个程序(多任务),而且它允许多个用户使用同一台电脑,或接受多个用户通过网络连接到电脑执行软件(多用户)。这些都是一个成熟的操作系统所应具备的特点。

 稳定的执行效率

因为Linux的核心原始码是根据32位计算机做最佳化设计,所以可以确保执行效率的稳定。除此之外,它还支持多线程(Multi-Threads),可以在一个程序的内存空间中,执行多个线程,提高了硬件资源的利用率。

 跨平台操作

由于Linux的系统核心只有低于10%的源代码采用汇编语言(Assembly)撰写,其余都是以C语言完成,因此平台的移植性很高。Linux目前可以执行的平台有很多,并不只限于Intel电脑,而且可以使用多个处理器执行服务器的工作,这更增加了Linux在系统或服务器上的管理能力。

 中文化界面

以往要在Linux中使用中文必须通过外挂的方式产生CLE(Chinese Language Extension),但目前较新版的Linux,如Ubuntu,不仅在安装过程中可以选择中文界面,而且安装后可以直接使用中文,如图1-3所示。这节省了许多解决中文化问题的时间。

 图形整合界面

其实图形界面并非是微软的专利,目前许多操作系统都一致采用图形界面以方便用户的操作,Linux也不例外。在Linux上可采用多种图形管理程序来变更不同的桌面图案或功能菜单,如GNOME和KDE。这一点是Windows操作系统单一界面所望尘莫及的。

 兼容其他UNIX系统

因为同样遵循POSIX(Portable Operating System for unIX)的标准来开发,所以Linux与现今的System V和BSD等主流UNIX系统均可相容,而原本在UNIX系统下可以执行的程序,也几乎都能移植到Linux上。

图1-3  Ubuntu中文化界面

 内建应用程序

愈来愈多专为Linux开发的应用程序在互联网上随处可见,而除了自行寻找所需软件外,其实在Linux中早已内建为数众多的各式软件,如图1-4所示,足以满足一般人的     需求。

图1-4  Ubuntu内建的各式软件

 支持多种文件系统

Linux可以通过挂载的方式加入许多不同的文件系统,如Windows中的FAT 16/32、NTFS,OS/2中的HPFS,甚至网络上其他电脑共享的文件系统NFS,这些都是Linux支持的文件系统。

 绝佳的内存管理

Linux会将未使用的内存区块作为缓冲区(Buffer),以加速程序的执行。另外,系统采取内存保护模式执行程序,可以避免因为一个程序执行失败,而影响整个操作系统的运作的情况。

 完善的网络功能

与UNIX系统一样,Linux将TCP/IP作为默认的网络通信协议。除此之外,它还内建了许多服务器级别的软件。所以不需要额外购买其他软件包,即可直接利用Linux来担任全方位的网络服务器。

 多样的程序开发工具

Linux不仅可用来进行系统管理工作,对于程序开发人员而言,它也是绝佳的选择。因为在Linux的软件包中,包含了多种程序语言与开发工具,如gcc、cc、c++、Tcl/Tk、Perl、Fortran-77和Python等。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论