推动因素

上传人:206****923 文档编号:40509731 上传时间:2018-05-26 格式:DOC 页数:6 大小:92.50KB
返回 下载 相关 举报
推动因素_第1页
第1页 / 共6页
推动因素_第2页
第2页 / 共6页
推动因素_第3页
第3页 / 共6页
推动因素_第4页
第4页 / 共6页
推动因素_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《推动因素》由会员分享,可在线阅读,更多相关《推动因素(6页珍藏版)》请在金锄头文库上搜索。

1、第一篇Linux 内核2 第一篇 Linux 内核第 1 章 推 动 因 素数字数据传输和处理是当今信息社会的基础。在较短时间内,Internet 已经深入到我们日常生活中的各个角落,我们大部分人肯定无法想象没有它我们的日常生活会是什么样子。通过它的新服务,为我们提供了交流的途径,所有社会阶层都对此感到着迷,但是公司和机构同样也将 Internet 用作各项事务处理的基础,比如内部信息交换、与客户和合作伙伴之间的沟通以及商务处理。Internet 技术是在过去 20 年中开发出来的,它真正的繁荣起始于 20 世纪 90 年代初环球网(World Wide Web)的诞生。从这以后它就获得了突破

2、性的发展,它已整合了各种新的协议和标准,这就同时提高了当前这个“全球网”的功能性和安全性。随着 Internet 的开发取得进展,底层网络技术同样也取得了进展:20 世纪 80 年代第一封电子邮件通过电话线以 1 200 bps 的速度进行传送,但是现在我们可以在千兆位或兆兆位 的线路上进行通信。而且,用于移动通信的新技术也正在初现端倪,比如 UMTS和蓝牙 技术。所有这些技术都有一点是相同的:它们是数字通信系统不可分割的部分,这就使得 空间通信和分布式应用程序及其用户之间的相互交互成为了可能。现代通信系统将这些极度复杂的任务分解为若干层,且这些层的实例通过预定义的协议相互交互以提供所需的 服

3、务。信息通信业务1这一领域既处理电信系统(以及其基本机理)的研发,也通过应用计 算机科学手段处理这些系统的应用和实现任务。这就意味着,除了通信系统和协议的设 计,这些机理的实现也是信息通信学科的一项重要任务。不幸的是,许多大学和学术机 构都忽略了这一点。比如,在论述有关通信协议的基础知识和当前标准时,如何应用这些原理的知识传授的却非常少(比如,在实现通信协议时可以应用哪些计算机科学的基本 原理) 。通过本书,各位作者他们自己也教授计算机专业的学生试图为促进信息通信业务中计算机部分的作用做出努力。通过以 Linux 操作系统为例(作者主要将其用于研究目的) ,以及一些常规的办公应用程序(电子邮件

4、、万维网、字处理软件等等) ,我们将对通信系统和通信协议的实际实现进行介绍。本质上,Linux 内核网络子系统的构造,网络组件之间接口的构造,以及实用软件方法等都会被用于向读者展示协议和网络功能的各种实现方式。当然,除了其教学用途外,本书同样适用于所有对 Linux 内核网络子系统架构感兴趣的读者(看一看 Linux 内核那糟糕的注解部分就知道了) 。随后一部分内容讨论了 Linux操作系统以及在办公室、公司、网络和研究中使用它的原因。1. 信息通信业务(telematics)是信息学的一门子学科,它应用信息技术来研究电信系统的设计和实现。第 1 章 推动因素 31.1 Linux 操作系统L

5、inux 是一种可免费获得的多用户、多任务处理、多处理器以及多平台的 UNIX 操作系统。其流行程度和用户数量在不断增加,这使得 Linux 在操作系统市场中的分量也在不断增加。由于每个人都可以通过 Internet 免费获得 Linux 系统源代码,且每个人都可以参与并推动其进一步的开发,所以全世界许多开发人员都在不断地进行该系统的进一步开发、消除现存错误以及对该系统性能优化。大部分开发人员都是在其空闲时间无偿进行这一非常耗时的工作的,这一事实就说明了与 Linux(主要是 Linux 内核)打交道具有多么大的乐趣。随着本书的深入,我们将尽力把这种热忱也传递给我们的读者。Karlsruhe

6、大学有许多研究项目都使用过 Linux 网络架构,并对其进行过增强或修改,这些项目都包含了所有参与学生的强烈的学习动机。原因主要在于这为他们提供了参与“Linux 运动”的一条途径。Linux 开发最初是由一名叫 Linus B. Torvalds 的学生在 1991 年开始的。当时,他为开发一种基于 PC 的类似 UNIX 的新操作系统这一想法工作了五个月,最终他成功实现了使其在 Internet 上是免费可得的这一目标。Linux 推出的目的在于提供比 Minix 系统更多的功能,后者是由 Andrew S.Tanenbaum 设计的,它仅仅是基于教学目的而开发的Tane95。利用他在 M

7、inix 新闻组中刊出的消息,他发动了一场运动,这场运动的当前成果就是最稳定和开发最广泛的一种 UNIX 操作系统的诞生。在那个时候,Linus Torvalds 仅仅计划开发出一种纯试验性的系统,但是他的想法在随后几年中得到了进一步地发展,所以现在许多个人、公司和科学家等类似的机构和个人都在成功地使用 Linux。Linux 成为最流行操作系统之一的原因主要在于它与其他系统(Apple、MS Windows)的互操作性,以及在许多不同平台上(Intel x86、MIPS、PA-RISC、IA64、Alpha、ARM、Sparc、PowerPC、M68、S390)的运行能力。说服许多个人和公司

8、使用 Linux 的因素不仅仅在于 Linux 广泛的功能性,而且还在于该操作系统源代码的免费可得性。而且,德国政府在其对开放源代码软件的支持项目下,积极推广具有免费可得源代码的免费可得软件的应用。其主要原因不在于其较低的采购成本,而在于所使用软件的透明性。事实上,任何人都可以查看其源代码并检查其功能性。最重要的是,任何人都能够检查某一应用程序或操作系统中包含着何种很可能是安全相关的功能性或错误。特别是对于商业系统和应用程序而言,人们常常会推测它们会将用户的信息或所安装的应用程序信息传递给制造商。对于免费开发的软件而言就不会有这样的担忧,因为在这类软件中这样的行为很快就会被察觉到并被公布出来。

9、通常,若干开发人员在 Internet 上以一种分布式方式对某一开放源项目进行并行开发,这就形成了对他们自身行为的一种隐形监督。毕竟,免费软件的目标不在于公司或其股东利润的最大化,其目标是为每个人开发出高质量的软件。Linux非常能够说明免费开发软件不仅仅是少数狂热分子的爱好,而且它还会导致重要的和极度稳定的应用程序的诞生。本书的作者们主要将 Linux 用于网络领域的研究工作。免费可得的源文本使得我们可4 第一篇 Linux 内核以实现和评估真实网络世界中的新理论和协议。比如,Linux 被用于对 TCP 传输协议的各种改进的研究WeRW0l, Ritt0l、用于 KIDS QoS 支持框架

10、的开发、用于高分辨率 UKA-APIC 计时器的开发WeRi00。1.2 什么是 Linux最初,术语 Linux 仅仅用于描述从某一系统硬件中提取出来的操作系统内核,它为应用程序提供了一个统一的接口。随着时间的推移,术语 Linux 通常意指内核(真正的Linux)以及整个系统环境,包括以下组件:操作系统内核(当前版本为 2.0、2.2、或 2.4) 。系统程序(编译器、库文件、工具等) 。图形用户接口 (比如XFree) 、窗口管理器或应用程序环境 (KDE、Gnome、FVWM等) 。各个领域中的大量应用程序(编辑器、浏览器、办公应用程序、游戏等) 。非内核组成部分的各种组件主要来自免费

11、软件基金会(Free Software Foundation)的GNU 项目,这也就解释了为什么整个系统环境通常被称为“GNU/Linux 系统” 。Linux 内核和 GNU 程序的一个共有特征是它们都是在 GNU 公共许可协议(GNU Public License,GPL)下免费发布的(如果源文本是公开可得的话) 。从这些程序已经获得了改良和改进这一角度而言,它们都是自动遵循 GNU 许可协议的(即它们的源文本必须也是做成免费可得的) 。自从 Linux 出现以来,这种做法就具有了这样一种效果,即该系统在没有公司政策利益的干扰下得到了进一步的开发,并且与其他商业操作系统相比它更加以表达出用

12、户需求为导向。以免费可得的源文本为基础,任何人都能够参与它的开发并实现新的功能。这就是说在国际标准的支持下,Linux 总是在不断演化,且不会存在强制执行公司或产权标准以确保市场地位的企图。某一软件开发中产生的错误通常很快能够得到修正。而且,它还存在着一股持续不断的力量来改进该系统以使其性能尽可能的好。最新内核版本中的网络实现部分就非常清楚地展示了这一点:在得知 Linux 在多处理器系统中协议处理领域的性能因为一些瑕疵而遭受损失后,为了移除这些缺陷,其网络部分获得了大范围的重写。这就说明了 Linux 清楚地展示了开放源项目的好处:稳定性能安全1.3 使用 Linux 的理由1.2 节介绍了

13、 Linux 作为一种免费软件项目所具有的重要属性及目标。本节将讨论许多 Linux 内核的一般属性,为使用 Linux 给出更多的理由。第 1 章 推动因素 5Linux 支持抢占式多任务处理(preemptive multitasking):所有进程独立运行于受保护的不同内存空间中,这样一个进程发生故障不管怎样都不会损害到其他进程。当某一进程要求了太多计算时间的时候,其处理器使用权限就可能被收走并分配给另一等待中的应用程序。抢占式多任务处理是稳定系统的一项基本要求。多处理器(Multiprocessor):Linux 是能够在 SMP(对称多任务处理,Symmetric Multiproc

14、essing)操作中支持若干处理器的少数操作系统之一。这就是说若干个进程可以由不同 CPU 对它们进行并行处理。自从内核版本 2.0 以来它就支持具有 Intel 和 Sparc 处理器的多处理器系统。版本 2.2 以及目前的版本 2.4 又进一步提升了 Linux 内核的性能和并行性。多用户(Multiuser):当若干用户从不同控制台登录时,他们可以并行工作于一个系统中。另外,用户可以很方便地在多个图形用户接口上工作。多平台(Multiplatform):最初 Linux 仅仅是为个人电脑开发的(Intel 80386) ,但是今天它却在十多个处理器架构上运行着。它所支持的平台范围从标准个

15、人电脑上的小型个人数据助理(digital personal assistant)延伸至各种大型机架构:Intel x86、MIPS、PA-RISC、IA64、Alpha、ARM、Sparc、PowerPC、M68 等。Linux 是一种 UNIX 系统:它与 POSIX-1300.1 标准1是兼容的,且包含了 UNIX系统 V 和 BSD 的大部分功能性。这就是说可以在 Linux 下使用 UNIX 标准软件。丰富的网络功能性:在 Linux 网络架构下对于网络领域中的网络协议和功能性我们具有诸多选择。Internet 及其服务的发展和 UNIX 系统是不可分割的,这就是为什么 TCP/IP

16、 协议族的属性及其行为可以在某种 UNIX 系统下得到最好的研究和调控的原因。其他 PC 操作系统可能并不适合于这些工作,特别是那些源代码不是公开可得的系统。开放源:整个 Linux 内核的源代码都是免费可得的,且可以依据 GNU 公共许可协议使用它。在全世界有大量的程序员在为 Linux 内核的进一步开发而工作,这就使得它可以获得持续的增强和提升。由于 Linux 是通过 Internet 发布的,所以每一用户都能够对内核进行测试并对其进行增强或提升。从这个角度看,如果没有 Internet,那么 Linux 的开发也将是不可能的。以前,用户们不得不容忍他们所购买软件的缺陷,现在 Linux 允许每个人来去除这样的缺陷,而且这的确是一种有效的方式。我们常常听到的对 Linux 的一项批判是,它存在一个驱动程序支持的问题。在过去一些年里,这种情形已经取得了极大的改观。 比如,Linux 支持实际操作中可以得到的所有网卡。事实上,我们对 Linux 社区的依赖可以达到这样一种

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号