好文档 - 专业文书写作范文服务资料分享网站

第1章 Linux系统基础

天下 分享 时间: 加入收藏 我要投稿 点赞

第1章 Linux系统基础

1.1 什么是Linux

“Linux 是一种 UNIX 操作系统的克隆,它(的内核)由荷兰赫尔辛基大学的 Linus Torvalds 以及网络上组织松散的黑客队伍一起从零开始编写而成。 Linux的目标是保持和 POSIX 的兼容。”

它诞生于1991年的10月5日。在世界各地计算机爱好者的共同努力下,现已成为使用最多的一种类UNIX操作系统。Linux是一个可独立运作的POSIX兼容操作系统,它也包含了SYS V和BSD的功能。它完全是独立发展的,其中没有包含任何有版权问题的代码。

1.2 Linux的发展历史

在Linux 操作系统的诞生、发展和成长过程中,与之紧密相关的有UNIX 操作系统、MINIX 操作系统、GNU 计划、POSIX 标准和Internet 网络。

UNIX 操作系统

Linux 操作系统是UNIX 操作系统的一个版本。UNIX 操作系统是美国贝尔实验室的Ken.Thompson和Dennis Ritchie 于1969 年夏在DEC PDP-7 小型计算机上开发的一个分时操作系统。当时使用的是BCPL 语言(基本组合编程语言),后经Dennis Ritchie 于1972 年用移植性很强的C 语言进行了改写,使得UNIX 系统在大专院校得到了推广。

MINIX 操作系统

MINIX 系统是由Andrew S. Tanenbaum(AST)1987年编制的,主要用于学生学习操作系统原理。目前主要有两个版本在使用: 1.5 版和2.0 版。MINIX 不是商业的操作系统,它同时提供了用C 语言和汇编语言写的系统源代码,主要用于操作系统教学。

GNU 计划

GNU 计划和自由软件基金会(the Free Software Foundation – FSF)是由Richard M. Stallman 于1984 年创办的。旨在开发一个类似 Unix、并且是自由软件的完整操作系统统。GNU 是“GNU's Not Unix”的缩写,它的发音为“guh-NEW”。

到上世纪90 年代初,GNU 项目已经开发出许多高质量的免费软件,其中包括有名的emacs 编辑系统、bash shell 程序、gcc 系列编译程序、gdb 调试程序等等。

POSIX 标准

POSIX(Portable Operating System Interface for Computing Systems,计算机可移植操作系统接口)是由IEEE 和ISO/IEC 开发的一簇标准。该标准是基于现有的UNIX 实践和经验,描述了操作系统的调用服务接口,用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植运行。

1989 年POSIX 的工作被转移至ISO/IEC 社团,并由15 工作组继续将其制定成ISO 标准。到1990 年,POSIX.1 与已经通过的C 语言标准联合,正式批准为IEEE 1003.1-1990(也是ANSI 标准)和ISO/IEC 9945-1:1990 标准。

Linux 操作系统

Linux源自芬兰的一个研究生Linus Torvalds在1991年的一项个人计划,他最初的想法是设计一个Minux的分支的操作系统。从1991 年的4 月份开始,Linus 几乎花了全部时间研究386-Minix 系统,并且尝试着移植GNU 的软件到该系统上(GNU gcc、bash、gdb 等)。并在comp.os.Minix 上发布说自己已经成功地将bash 移植到了Minix 上。

Linus 声明他开发的操作系统没有使用一行Minix 的源代码;而且由于使用了386 的任务切换特性,所以该操作系统不好移植(没有可移植性),并且只能使用AT 硬盘。对于Linux 的移植性问题,Linus 当时并没有考虑。但是目前Linux 几乎可以运行在任何一种硬件体系结构上。

到了1991 年的10 月5 日,Linus 在comp.os.Minix 新闻组上发布消息,正式向外宣布Linux 内核系统的诞生(Free Minix-like kernel sources for 386-AT)。这段消息可以称为Linux 的诞生宣言,并且一直广为流传。

Linux 操作系统刚开始时并没有被称作Linux,Linus 给他的操作系统取名为FREAX,其英文含义是怪诞的、怪物、异想天开等意思。在他将新的操作系统上载到ftp.funet.fi 服务器上时,管理员Ari Lemke很不喜欢这个名称。他认为既然是Linus 的操作系统就取其谐音。

1.3 Linux的版本

Linux与其它的UNIX系统变体不同的原因在于它只定义了一种操作系统内核。内核命令必须相同、守护进程(daemon)以及其它软件一起打包(packaged)来组织成一个可以使用的完整的操作系统(发行版本)。

Linux的版本有两种:内核版本与发行版本。 1.3.1 Linux的内核版本

Linux的内核具有两种不同的版本号,实验版本和产品化版本(稳定版本)。要确定Linux版本的类型,只要查看一下版本号:每一个版本号由三位数字组成,第二位数字说明版本类型。如果第二位数字是偶数则说明这种版本是产品化版本,如果是奇数说明是实验版本。如2.0.34是产品化版本,2.1.56是实验版本。

Linux内核开发和规范一直是由Linux社区控制着,版本也是唯一的。操作系统的内核版本指的是在Linus本人领导下的开发小组开发出的系统内核的版本号。自1994年3月14日发布了第一个正式版本Linux 1.0以来,每隔一段时间就有新的版本或其修订版公布。发展到现在,Linux内核的稳定版的最后版本有:1.0.x、1.2.x、2.0.x、2.2.x、2.4.x、2.6.x等(第三位数字音位编译次数不同而不同,这礼使用x代替)。

1.3.2 常见linux发行版本

一些组织或厂家为了方便用户使用,将Linux系统内核与应用软件及文档包装在一起,并提供一些安装界面和系统设定与管理工具,这就构成了一个发行套件(发行版本)。相对于内核版本,发行套件的版本号是随着发布者的不同而不同,与系统内核的版本号是相对独立的。目前主要的发行版本有:RedHat,Mandriva,Debian GNU/Linux,红旗Linux,冲浪Linux等。

Linux主要的版本历史:

? 1990 Linus Torvalds接触Minix并写了一些内核组件 ? 1991 Linus公开了Linux内核--0.0.2版

? 1994年3月14日 Linux1.0版发行,Linux转向GPL版权协议 ? 1994年Linux的第一个商业发行版SlackwareLinux问世

? 1996年美国国家标准技术局的计算机系统实验室确认 Linux符合POSIX标准 ? 1999年Linux的简体中文发行版相继问世

目前我们所能接触到的linux主要有Red Hat、Slackware、Debian、SuSE、OpenLinux、TurboLinux、Red Flag、Mandarke、BluePoint、即时Linux、中标华普等等,各个版本的主要功能如表1.1所示。

表1.1 常见的Linux发行版本 发行版本 Red Hat Web站点 www.redhat.com 说明 Red Hat Linux以容易安装著称,Red Hat另一个优点是它的RPM(Red Hat Package Manager),RPM能够方便的管理软件的安装、升级和卸载。 Slackware系统稳定、安全,高度的坚持Unix的规范,但是该版本所有的配置都要经过配置文件进行,对初学者来说比较困难。 Debian的原始程序代码都是遵循GNU的方式开放的,所以它完全符合开放原代码精神,不像其它的Linux都或多或少的保留了一部份程序代码不开放。最新版本有一部份程序设计师,将Debian移植到其它平台上,所以也可以在其它平台上看见其踪影。 这是一套在欧洲相当受欢迎的版本,它和XFree86合作开发x86上 的X Server。SuSE它的安装套件也采用RPM模式,所以要安装、升级与移除程序都非常方便。 由Pacific HiTech公司发展的套件,该套件在日本市场占有一席之地,从安装到使用接口都是日文的,在国内它与清华大学及研究机构合作研发了中文版Slackware www.cdrom.com Debian www.debian.org SuSE www.suse.com www.pacific.com TurboLinux www.turbolinux.com 本,在国内造成了一股Linux潮流。 这是由中科红旗软件技术有限公司推出的中文版本的linux,该linux在众多的中国linux用户中占有一www.redflag-linux.com 定的比例。可以从网络上下载其红旗桌面版。。同时红旗针对服务器市场,专门推出了红旗服务器版本。 它的吉祥物是一个黑色的魔术帽,它其实参照了Redhat的基础上制成的,它继承了许多Redhat的优点,还加上了许多迎合Linux初学者的功能,如美丽的图形化安装界面 Red Flag Mandrake www.mandrake.com 每个Linux发行版本都有自己的LOGO,熟悉只鹅里LOGO对于了解该版本有一定的帮助,主要Linux发行版本的LOGO如表1.2所示。

表1.2 常见的Linux发行版本的图标 RedHat Linux Suse Linux 共创Linux 中标普华Linux 冲浪Linux Slackware Linux Debian Linux Mandrake Linux 即时Linux RedFlag Linux 新华Linux TruboLinux OpenLinux 1.4 Linux内核

内核(Kernel)是操作系统的内部核心程序,内核程序向外部提了供计算机设备的核心管理的调用。我们将操作系统分为两部分,内核所在的地址空间称为内核空间,内核以外的程序统称为挖补管理程序,外部管理程序是对外围设备的管理和操作,外部管理程序与用户进程所占用的地址空间称为外部空间,通常一个程序会跨越两个空间,当执行到内核空间的代码时,称程序处于内核态,否则称程序处于用户态。

从UNIX起,人们使用C语言等高级程序设计编写编写系统内核代码,使代码由良好的可扩展性,单一内核是当时的主流,近年微内核(micro kernel)结构逐渐流行起来。1986年Tanenbaum提出Mach kernel,而后他实现的Minux和GNU的Hurd操作系统成为微内核的典范。Linux系统采用单一内核程序,Linux内核的结构如图1.1所示,内核主要由Linus Torvalds本人为首的团队维护,所有其它的发行版本都是基于它们发布的内核为基础。

Linux各个模块之间都规定了较好的接口(interface)。Linux不支持用户态的线程,线程是同时执行的共享资源的程序段,线程之间可以共享地址空间,物理内存页面,甚至打开的文件和设备,这样在线程之间切换比在进程之间切换消耗的资源要少一些,大量使用线程可以提高系统的效率。

Linux内核是非抢占式的,即不能通过改变程序的运行优先级来影响内核当前的执行流程,换句话说,不经修改的Linux不能够直接用户作实时控制的操作系统,现在最新内核增加了对实时控制支持。

用户进程系统调用内核服务1内核服务2内核服务3硬件资源图1.1 Linux内核结构

1.5 Linux的主要特点

Linux是一个真正的多任务网络操作系统,内置TCP/IP协议,对于Internet提供所有通用协议,允许多用户同时运行多道程序而不互相干扰。

Linux与Unix系统在源代码级兼容,符合IEEEPOSIX.1标准,核心能仿真数学辅助处理器,支持包括MSDOS、Ext3等数十种文件系统,可以通过仿真模拟器运行DOS、Windows、Mac OS程序并且提供了所有的源代码,Linux系统采用先进的内存管理机制,更加有效地利用物理内存。

用户可以自己对系统进行改进和根据需要进行裁剪,现在很多的嵌入系统就是基于

第1章 Linux系统基础

第1章Linux系统基础1.1什么是Linux“Linux是一种UNIX操作系统的克隆,它(的内核)由荷兰赫尔辛基大学的LinusTorvalds以及网络上组织松散的黑客队伍一起从零开始编写而成。Linux的目标是保持和POSIX的兼容。”它诞生于1991年的10月5日。在世界各地计算机爱好者的共同努力下,现已成为
推荐度:
点击下载文档文档为doc格式
9v91h4hgle208bi78ds7
领取福利

微信扫码领取福利

微信扫码分享