操作系统发展历程

此文根据百度百科及网上搜集的资料整理编辑,百度百科原文请参考:

http://baike.baidu.com/view/880.html?tp=8_01

操作系统(Operating System,简称OS)是一管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。目前微机上常见的操作系统有DOS、OS/2、UNIX、XENIX、LINUX、Windows、Netware等。

基本介绍发展历史
  1. 1980年代前
  2. 20世纪80年代
  3. 20世纪90年代
  4. 2000年以后
发展年表详细分类
  1. 分类一
  2. 分类二
  3. 分类三
  4. 分类四
  5. 分类五
同名图书
  1. 基本信息
  2. 内容简介
  3. 图书目录
实用操作

基本介绍

操作系统是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合。

操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。

操作系统是管理计算机系统的全部硬件资源、软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。

所有的操作系统具有并发性、共享性、虚拟性和不确定性四个基本特征。

操作系统的型态非常多样,不同机器安装的OS可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。

许多操作系统制造者对OS的定义也不大一致,例如有些OS集成了图形用户界面,而有些OS仅使用文本接口,而将图形界面视为一种非必要的应用程序。

操作系统理论在计算机科学中为历史悠久而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与内核。

发展历史

各类平台上操作系统的功能演化。

纵观电脑之历史,操作系统与电脑硬件的发展息息相关。

操作系统之本意原为提供简单的工作排序能力,后为辅助更新更复杂的硬件设施而渐渐演化。

从最早的批次模式开始,分时机制也随之出现,在多处理器时代来临时,操作系统也随之添加多处理器协调功能,甚至是分布式系统的协调功能。其他方面的演变也类似于此。

另一方面,在个人电脑上,个人电脑之操作系统因袭大型电脑的成长之路,在硬件越来越复杂、强大时,也逐步实践以往只有大型电脑才有的功能。

总而言之,操作系统的历史就是一部解决电脑系统需求与问题的历史。

第一部电脑并没有操作系统。这是由于早期电脑的建立方式(如同建造机械算盘)与效能不足以执行如此程序。

但在1947年发明了晶体管,以及莫里斯·威尔克斯(Maurice Vincent Wilkes)发明的微程序方法,使得电脑不再是机械设备,而是电子产品。系统管理工具以及简化硬件操作流程的程序很快就出现了,且成为操作系统的滥觞。

到了1960年代早期,商用电脑制造商制造了批次处理系统,此系统可将工作的建置、调度以及执行序列化。此时,厂商为每一台不同型号的电脑创造不同的操作系统,因此为某电脑而写的程序无法移植到其他电脑上执行,即使是同型号的电脑也不行。

到了1964年,IBM 推出了一系列用途与价位都不同的大型电脑IBM System/360,大型主机的经典之作。而它们都共享代号为OS/360的操作系统(而非每种产品都用量身订做的操作系统)。让单一操作系统适用于整个系列的产品是System/360成功的关键,且实际上IBM目前的大型系统便是此系统的后裔;为System/360所写的应用程序依然可以在现代的IBM机器上执行!

OS/360也包含另一个优点:永久贮存设备—硬盘驱动器的面世(IBM称为DASD(Direct access storage device))。另一个关键是分时概念的建立:将大型电脑珍贵的时间资源适当分配到所有使用者身上。分时也让使用者有独占整部机器的感觉;而Multics的分时系统是此时众多新操作系统中实践此观念最成功的。

1963年,奇异公司与贝尔实验室合作以PL/I语言建立的Multics,是激发1970年代众多操作系统建立的灵感来源,尤其是由AT&T贝尔实验室的丹尼斯·里奇与肯·汤普逊所建立的Unix系统,为了实践平台移植能力,此操作系统在1969年由C语言重写;另一个广为市场采用的小型电脑操作系统是VMS。

第一代微型计算机并不像大型电脑或小型电脑,没有装设操作系统的需求或能力;它们只需要最基本的操作系统,通常这种操作系统都是从ROM读取的,此种程序被称为监视程序(Monitor)。

1980年代,家用电脑开始普及。通常此时的电脑拥有8-bit处理器加上64KB内存、屏幕、键盘以及低音质喇叭。而80年代早期最著名的套装电脑为使用微处理器6510(6502芯片特别版)的Commodore C64。此电脑没有操作系统,而是以一8KB只读内存BIOS初始化彩色屏幕、键盘以及软驱和打印机。它可用8KB只读内存BASIC语言来直接操作BIOS,并依此撰写程序,大部分是游戏。此BASIC语言的解释器勉强可算是此电脑的操作系统,当然就没有内核或软硬件保护机制了。此电脑上的游戏大多跳过BIOS层次,直接控制硬件。

家用电脑C64的抽象架构

早期最著名的磁盘启动型操作系统是CP/M,它支持许多早期的微电脑,且被MS-DOS大量抄袭其功能。

最早期的IBM PC其架构类似C64。当然它们也使用了BIOS以初始化与抽象化硬件的操作,甚至也附了一个BASIC解释器!但是它的BASIC优于其他公司产品的原因在于他有可携性,并且兼容于任何符合IBM PC架构的机器上。这样的PC可利用Intel-8088处理器(16-bit寄存器)寻址,并最多可有1MB的内存,然而最初只有640KB。软式磁盘机取代了过去的磁带机,成为新一代的储存设备,并可在他512KB的空间上读写。为了支持更进一步的文件读写概念,磁盘操作系统(Disk Operating System,DOS)因而诞生。此操作系统可以合并任意数量的磁区,因此可以在一张磁盘片上放置任意数量与大小的文件。文件之间以档名区别。IBM并没有很在意其上的DOS,因此以向外部公司购买的方式取得操作系统。

1980年微软公司取得了与IBM的合约,并且收购了一家公司出产的操作系统,在将之修改后以MS-DOS的名义出品,此操作系统可以直接让程序操作BIOS与文件系统。到了Intel-80286处理器的时代,才开始使用基本的储存设备保护措施。MS-DOS的架构并不足以满足所有需求,因为它同时只能执行最多一个程序(如果想要同时执进程式,只能使用TSR的方式来跳过OS而由程序自行处理多任务的部份),且没有任何内存保护措施。对驱动程序的支持也不够完整,因此导致诸如音效设备必须由程序自行设置的状况,造成不兼容的情况多有发生。某些操作的效能也是可怕地糟糕。许多应用程序因此跳过MS-DOS的服务程序,而直接存取硬件设备以取得较好的效能。虽然如此,但MS-DOS还是变成了IBM PC上面最常用的操作系统(IBM自己也有推出DOS,称为IBM-DOS或PC-DOS)。MS-DOS的成功使得微软成为地球上最赚钱的公司之一。

MS-DOS在个人电脑上的抽象架构

而1980年代另一个崛起的操作系统异数是Mac OS,此操作系统紧紧与麦金塔电脑捆绑在一起。此时一位全录伯拉图实验室的员工Dominik Hagen访问了苹果电脑的史蒂夫·乔布斯,并且向他展示了此时全录发展的图形化使用者界面。苹果电脑惊为天人,并打算向全录购买此技术,但因伯拉图实验室并非商业单位而是研究单位,因此全录回绝了这项买卖。在此之后苹果一致认为个人电脑的未来必定属于图形使用者界面,因此也开始发展自己的图形化操作系统。现今许多我们认为是基本要件的图形化接口技术与规则,都是由苹果电脑打下的基础(例如下拉式菜单、桌面图标、拖曳式操作与双点击等)。但正确来说,图形化使用者界面的确是全录创始的。

Apple I电脑,苹果电脑的第一代产品。延续80年代的竞争,1990年代出现了许多影响未来个人电脑市场深厚的操作系统。由于图形化使用者界面日趋繁复,操作系统的能力也越来越复杂与巨大,因此强韧且具有弹性的操作系统就成了迫切的需求。此年代是许多套装类的个人电脑操作系统互相竞争的时代。

上一年代于市场崛起的苹果电脑,由于旧系统的设计不良,使得其后继发展不力,苹果电脑决定重新设计操作系统。经过许多失败的项目后,苹果于1997年释出新操作系统——MacOS的测试版,而后推出的正式版取得了巨大的成功。让原先失意离开苹果的Steve Jobs风光再现。

除了商业主流的操作系统外,从1980年代起在开放原码的世界中,BSD系统也发展了非常久的一段时间,但在1990年代由于与AT&T的法律争端,使得远在芬兰赫尔辛基大学的另一股开源操作系统——Linux兴起。 Linux内核是一个标准POSIX内核,其血缘可算是Unix家族的一支。Linux与BSD家族都搭配GNU计划所发展的应用程序,但是由于使用的许可证以及历史因素的作弄下,Linux取得了相当可观的开源操作系统市占率,而BSD则小得多。

相较于MS-DOS的架构,Linux除了拥有傲人的可移植性(相较于Linux,MS-DOS只能运行在Intel CPU上),它也是一个分时多进程内核,以及良好的内存空间管理(普通的进程不能存取内核区域的内存)。想要存取任何非自己的内存空间的进程只能通过系统调用来达成。 一般进程是处于使用者模式(User mode)底下,而执行系统调用时会被切换成内核模式(Kernel mode),所有的特殊指令只能在内核模式执行,此措施让内核可以完美管理系统内部与外部设备,并且拒绝无权限的进程提出的请求。因此理论上任何应用程序执行时的错误,都不可能让系统崩溃(Crash)。

几乎完整的Linux架构图

另一方面,微软对于更强力的操作系统呼声的回应便是Windows NT于1999年的面世。

1983年开始微软就想要为MS-DOS建构一个图形化的操作系统应用程序,称为Windows(有人说这是比尔·盖兹被苹果的Lisa电脑上市所刺激)。

一开始Windows并不是一个操作系统,只是一个应用程序,其背景还是纯MS-DOS系统,这是因为当时的BIOS设计以及MS-DOS的架构不甚良好之故。

在1990年代初,微软与IBM的合作破裂,微软从OS/2(早期为命令行模式,后来成为一个很成功但是曲高和寡的图形化操作系统)项目中抽身,并且在1993年7月27日推出Windows 3.1,一个以OS/2为基础的图形化操作系统。

并在1995年8月15日推出 Windows 95。

直到这时,Windows系统依然是建立在MS-DOS的基础上,因此消费者莫不期待微软在2000年所推出的 Windows 2000上,因为它才算是第一个脱离MS-DOS基础的图形化操作系统。

下面的表格为Windows NT系统的架构:在硬件阶层之上,有一个由微内核直接接触的硬件抽象层(HAL),而不同的驱动程序以模块的形式挂载在内核上执行。因此微内核可以使用诸如输入输出、文件系统、网络、信息安全机制与虚拟内存等功能。而系统服务层提供所有统一规格的函数调用库,可以统一所有副系统的实作方法。例如尽管POSIX与OS/2对于同一件服务的名称与调用方法差异甚大,它们一样可以无碍地实作于系统服务层上。在系统服务层之上的副系统,全都是使用者模式,因此可以避免使用者程序执行非法行动。

简化版本的Windows NT抽象架构

第一个实作的副系统群当然是以前的微软系统。DOS副系统将每个DOS程序当成一进程执行,并以个别独立的MS-DOS虚拟机器承载其运行环境。另外一个是Windows 3.1模拟系统,实际上是在Win32副系统下执行Win16程序。因此达到了安全掌控为MS-DOS与早期Windows系统所撰写之旧版程序的能力。然而此架构只在Intel 80386处理器及后继机型上实作。且某些会直接读取硬件的程序,例如大部分的Win16游戏,就无法套用这套系统,因此很多早期游戏便无法在Windows NT上执行。

Windows NT有3.1、3.5、3.51与4.0版。

Windows 2000是Windows NT的改进系列(事实上是Windows NT 5.0)、Windows XP(Windows NT 5.1)以及Windows Server 2003(Windows NT 5.2)与Windows Vista(Windows NT 6.0)也都是立基于Windows NT的架构上。

而本年代渐渐增长并越趋复杂的嵌入式设备市场也促使嵌入式操作系统的成长。

现代操作系统通常都有一个使用的绘图设备的图形化使用者界面,并附加如鼠标或触控面版等有别于键盘的输入设备。旧的OS或效能导向的服务器通常不会有如此亲切的接口,而是以命令行接口(CLI)加上键盘为输入设备。以上两种接口其实都是所谓的壳,其功能为接受并处理使用者的指令(例如按下一按钮,或在命令提示列上键入指令)。

选择要安装的操作系统通常与其硬件架构有很大关系,只有Linux与BSD几乎可在所有硬件架构上执行,而Windows NT仅移植到了DEC Alpha与MIPS Magnum。

在1990年代早期,个人电脑的选择就已被局限在Windows家族、类Unix家族以及Linux上,而以Linux及Mac OS X为最主要的另类选择,直至今日。

大型机与嵌入式系统使用很多样化的操作系统。大型主机近期有许多开始支持Java及Linux以便共享其他平台的资源。嵌入式系统近期百家争鸣,从给Sensor Networks用的Berkeley Tiny OS到可以操作Microsoft Office的Windows CE都有。

2000年以后 至2005年为止,用于通用计算机上的分布的操作系统主要两个家族:类Unix家族和微软Windows家族。而主机系统和嵌入式操作系统使用多样的系统,并且很多和Windows、Unix都没有直接的联系。类Unix家族包括多个组织的操作系统,其中有几个主要的子类包括System V、BSD和Linux。这里'Unix'是一个商标,开发组织允许使用操作系统在一个定义前提下自由地开发。这名字是通用大型设置操作系统类似组织 Unix。Unix系统运行在从巨型机到嵌入式系统的多种机器架构上。Unix主要使用于重要的商务服务器系统以及学院和工程环境中的工作站之上。和 AT&T Unix不同,自由软件比如Linux和BSD逐步开始流行,并且开始进入桌面操作系统领域。和一些Unix操作系统不同,像惠普公司的HPUX和IBM 公司的AIX是设计仅运行在客户购买的设备上,其中有一些特殊的(比如SUN公司的Solaris)可以运行在客户购买设备和基于工业标准的PC上。 APPLE公司的Mac OS X是一个BSD特例,以取代早期小型市场上的苹果公司Mac OS,众多流行的Unix操作系统正在走向一体。 微软公司的Windows操作系统家族起源于早期的IBM PC环境中的MS-DOS,现在版本是基于新的Windows NT内核,第一次是在OS/2中制定。和Unix不同,Windows只能运行在32位和64位的x86 CPU(如Intel或者AMD的芯片)上,尽管早期有版本运行于DEC Alpha,MIPS 和 PowerPC体系结构。今天Windows是一个流行的操作系统,在全球桌面市场中占有90%左右的份额,同时在中低端服务器市场也有广泛的应用,如 Web服务器和数据库服务器。

大型机系统,比如IBM公司的Z/OS,和嵌入式操作系统比如QNX、eCOs和PalmOS都是和Unix和Windows无关的操作系统,而 Windows CE、Windows NT Embedded 4.0和Windows XP Embedded都是和Windows相关的。

老的操作系统停留在市场包括类似IBM Windows的OS/2、来自惠普的VMS(以前的DEC);苹果公司的Mac OS操作系统、非Unix先驱苹果公司Mac OS X,以及AmigaOS,第一个图形用户界面的操作系统,包括对于普通用户的高级的多媒体能力。

发展年表

1956年

GM-NAA I/O

1959年

SHARE Operating System

1960年

IBSYS

1961年

CTSS

MCP (Burroughs Large Systems)

1962年

GCOS

1964年

EXEC 8

OS/360 (宣称)

TOPS-10

1965年

Multics (宣称)

OS/360 (上市)

Tape Operating System (TOS)

1966年

DOS/360 (IBM)

MS/8

1967年

ACP (IBM)

CP/CMS

ITS

WAITS

1969年

TENEX

Unix

1970年

DOS/BATCH 11 (PDP-11)

1971年

OS/8

1972年

MFT (operating system)

MVT

RDOS

SVS

VM/CMS

1973年

Alto OS

RSX-11D

RT-11

VME

1974年

MVS (MVS/XA)

1975年

BS2000

1976年

CP/M

TOPS-20

1978年

Apple DOS 3.1 (苹果公司第一个操作系统)

TripOS

VMS

Lisp Machine (CADR)

1979年

POS

NLTSS

1980年

OS-9

QDOS

SOS

XDE (Tajo)

Xenix

1981年

MS-DOS

1982年

Commodore DOS

SunOS (1.0)

Ultrix

1983年

Lisa OS

Coherent

Novell NetWare

ProDOS

1984年

Macintosh OS (系统 1.0)

MSX-DOS

QNX

UniCOS

1985年

AmigaOS

Atari TOS

MIPS OS

Oberon operating system

Microsoft Windows 1.0 (Windows第一版)

1986年

AIX

GS-OS

HP-UX

1987年

Arthur

IRIX (SGI推出的第一个 版本号是3.0)

Minix

OS/2 (1.0)

Microsoft Windows 2.0

1988年

A/UX (苹果电脑)

LynxOS

MVS/ESA

OS/400

1989年

NeXTSTEP (1.0)

RISC OS

SCO Unix (第三版)

1990年

Amiga OS 2.0

BeOS (v1)

OSF/1

Microsoft Windows 3.0

1991年

SunOS 4.1.x

Linux

1992年

386BSD 0.1

Amiga OS 3.0

Solaris 2.0 (SunOS 4.x的继承者,以SVR4为基础,而非BSD)

Microsoft Windows 3.1

1993年

Solaris 2.1

Solaris 2.2

Solaris 2.3

Plan 9 (第一版)

FreeBSD

NetBSD

Microsoft Windows NT 3.1 (第一版NT)

1994年

Solaris 2.4

1995年

Solaris 2.5

Digital UNIX (aka Tru64) 

OpenBSD

OS/390

Microsoft Windows 95

1996年

Microsoft Windows95 OSR2(OSR=OEMServicerelease) (即:Windows 97)

Microsoft Windows NT 4.0

1997年

Solaris 2.6

Inferno

Mac OS 7.6 (第一版官方正式命名为Mac OS)

SkyOS

1998年

Solaris 7 (第一款64位元Solaris版本,是2.7舍弃主版本号的称谓)

Microsoft Windows 98

1999年

AROS

Mac OS 8

Microsoft Windows 98 Second Edition

2000年

Solaris 8

AtheOS

Mac OS 9

MorphOS

Microsoft Windows 2000

Microsoft Windows Me

Mac OS X Public Beta (公开测试版)(2000年9月13日)

2001年

Mac OS X 10.0 Cheetah(印度豹)(2001年3月24日)

Amiga OS 4.0 (2001年5月)

Mac OS X 10.1 Puma(美洲狮)(2001年9月25日)

Microsoft Windows XP

z/OS

2002年

Solaris 9 for SPARC

Microsoft Windows XP 64-bit Edition

Windows XP Tablet PC Edition

Windows XP Media Center Edition

Syllable

Mac OS X 10.2 Jaguar(美洲虎)(2002年8月23日)

2003年

Solaris 9 for x86

Microsoft Windows Server 2003 (2003年3月28日)

Microsoft Windows XP 64-bit Edition - 以Microsoft Windows Server 2003为基础,同一天发布

Mac OS X 10.3 Panther(黑豹)(2003年10月24日)

2004年

Microsoft Windows XP Media Center Edition

2005年

Solaris 10

Microsoft Windows XP Professional x64 Edition

Mac OS X 10.4 Tiger(老虎)(2005年4月29日)

2006年

Microsoft Windows Vista

2007年

Mac OS X 10.5 Leopard(美洲豹)(2007年10月26日)

2008年

Ubuntu 8.04 LTS

OpenSolaris 08/05

Ubuntu 8.10

OpenSolaris 08/11

Windows Server 2008

2009年

Ubuntu 9.04

Mac OS X v10.6 Snow Leopard (雪豹)(2009年8月28日)

Windows Seven(windows 7)

Ubuntu 9.10

Chrome OS

2010 年

ubuntu 10.04

详细分类

目前的操作系统种类繁多,很难用单一标准统一分类。

根据应用领域来划分,可分为桌面操作系统、服务器操作系统、主机操作系统、嵌入式操作系统;

根据所支持的用户数目,可分为单用户(MSDOS、OS/2)、多用户系统(UNIX、MVS、Windows);

根据源码开放程度,可分为开源操作系统(Linux、Chrome OS)和不开源操作系统(Windows、Mac OS);

根据硬件结构,可分为网络操作系统(Netware、Windows NT、OS/2 warp)、分布式系统(Amoeba)、多媒体系统(Amiga);

根据操作系统的使用环境和对作业处理方式来考虑,可分为批处理系统(MVX、DOS/VSE)、分时系统( Linux、UNIX、XENIX、Mac OS)、实时系统(iEMX、VRTX、RTOS,RT WINDOWS);

根据操作系统的技术复杂程度,可分为简单操作系统、智能操作系统(见智能软件)。所谓的简单操作系统,指的是计算机初期所配置的操作系统,如IBM公司的磁盘操作系统DOS/360和微型计算机的操作系统CP/M等。这类操作系统的功能主要是操作命令的执行,文件服务,支持高级程序设计语言 编译程序和控制外部设备等。

下面介绍一下操作系统的五大类型:批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统。

1. 批处理操作系统

批处理(Batch Processing)操作系统的工作方式是:用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业,之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。

批处理操作系统的特点是:多道和成批处理。

2.分时操作系统

分时(Time Sharing)操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据上步结果发出下道命。分时操作系统将CPU的时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个终端用户服务。每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。分时系统具有多路性、交互性、“独占”性和及时性的特征。多路性指,伺时有多个用户使用一台计算机,宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU。交互性是指,用户根据系统响应结果进一步提出新请求(用户直接干预每一步)。“独占”性是指,用户感觉不到计算机为其他人服务,就像整个系统为他所独占。及时性指,系统对用户提出的请求及时响应。它支持位于不同终端的多个用户同时使用一台计算机,彼此独立互不干扰,用户感到好像一台计算机全为他所用。

常见的通用操作系统是分时系统与批处理系统的结合。其原则是:分时优先,批处理在后。“前台”响应需频繁交互的作业,如终端的要求; “后台”处理时间性要求不强的作业。

3.实时操作系统

实时操作系统(RealTimeOperatingSystem,RTOS)是指使计算机能及时响应外部事件的请求在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作的操作系统。实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。此外,实时操作系统应有较强的容错能力。

4.网络操作系统

网络操作系统是基于计算机网络的,是在各种计算机操作系统上按网络体系结构协议标准开发的软件,包括网络管理、通信、安全、资源共享和各种网络应用。其目标是相互通信及资源共享。在其支持下,网络中的各台计算机能互相通信和共享资源。其主要特点是与网络的硬件相结合来完成网络的通信任务。

5.分布式操作系统

它是为分布计算系统配置的操作系统。大量的计算机通过网络被连结在一起,可以获得极高的运算能力及广泛的数据共享。这种系统被称作分布式系统(DistributedSystem) 。它在资源管理,通信控制和操作系统的结构等方面都与其他操作系统有较大的区别。由于分布计算机系统的资源分布于系统的不同计算机上,操作系统对用户的资源需求不能像一般的操作系统那样等待有资源时直接分配的简单做法而是要在系统的各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如具有多个副本的文件,还必须考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出的数据是一致的。为了保证一致性,操作系统须控制文件的读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。分布操作系统的通信功能类似于网络操作系统。由于分布计算机系统不像网络分布得很广,同时分布操作系统还要支持并行处理,因此它提供的通信机制和网络操作系统提供的有所不同,它要求通信速度高。分布操作系统的结构也不同于其他操作系统,它分布于系统的各台计算机上,能并行地处理用户的各种需求,有较强的容错能力。

分类一

早期操作系统(专利保护)

TRS-DOS,ROM OS's

TI99-4

Commodore PET,64,和 VIC-20,

第一套IBM-PC

苹果电脑

Sinclair Micro和QnX等

非Unix商业操作系统

CP/M操作系统

MP/M-80

UCSD P-system

Mini-FLEX

SSB-DOS

CP/M-86

DR-DOS

FreeDOS

MS-DOS

PC-DOS

Mach 由卡纳尼基梅隆大学研究

L4微内核 第二代微内核

CHORUS

Choices

Multics

OS-9

NSJ

Netware:一种网络服务器操作系统

Unix及类似系统

A/UX(Apple UNIX)

Unix

微软Xenix

ChorusOS

Cromix

UNIflex

OS-9

IBM的AIX

BSD

FreeBSD

NetBSD

OpenBSD

DragonFly BSD

PC-BSD

Digital UNIX,即之后康柏Tru64

DNIX

HP的HP-UX

GNU/Hurd

SGI的IRIX

Inferno

Linux(或称GNU/Linux)

Mac OS X

MenuetOS

Minix

OSF/1

Plan9

SCO的SCO UNIX

Sun的SunOS,即之后的Solaris

System V

Ultrix

UniCOS

麒麟操作系统(Kylin),由国防科技大学、中软公司、联想公司、浪潮公司和民族恒星公司五家单位合作研制的服务器操作系统

OS/390

z/OS

Syllable

其他

Acorn

Arthur

ARX

RISC OS

RISCiX

Amiga

AmigaOS

Atari ST

TOS

MultiTOS

MiNT

分类二

苹果电脑(Apple/Macintosh)

Apple DOS

ProDOS

Mac OS

Mac OS X

Mac OS X 10.4 Tiger

Mac OS X 10.5 Leopard

Mac OS X 10.6 Snow Leopard (Alpha)

pink OS

BeOS

A/UX

Be

       BeOS

BeIA

Digital/康柏(Compaq)

AIS

OS-8

RSTS/E

RSX-11

RT-11

TOPS-10

TOPS-20

VMS(后更名为OpenVMS)

IBM

OS/2

AIX

OS/400

OS/390

VM/CMS

DOS/VSE

VSE/SP

VSE/ESA

OS/360 

MFT

MVT

SVS

MVS

TPF

ALCS

z/OS

PC-DOS

pink OS

微软(Microsoft)

MS-DOS

Xenix

Microsoft Bob

基于MS-DOS操作系统的Windows

Windows 1.0

Windows 2.0

Windows 3.1

Windows 95

Windows 98

Windows ME

Windows NT

Windows NT 3.5

Windows NT 4

Windows 2000

Windows XP

Windows XP SP1

Windows XP SP2

Windows XP SP3

Windows XP Media Center Edition

Windows XP Home Edition

Windows XP Tablet PC Edition

Windows XP Professional

Windows XP Professional x64 Edition

Windows Server 2003

Windows Server 2003 64-bit Edition

Windows Vista

Windows Vista SP1

Windows Vista Home Basic

Windows Vista Home Premium

Windows Vista Business

Windows Vista Ultimate

Windows Vista Enterprise

Windows Vista Starter

Windows Server 2008

Windows Server "Longhorn" Web x86

Windows Server "Longhorn" Web x64

Windows Server "Longhorn" Standard x86

Windows Server "Longhorn" Standard x64

Windows Server "Longhorn" Enterprise x86

Windows Server "Longhorn" Enterprise x64

Windows Server "Longhorn" Datacenter x86

Windows Server "Longhorn" Datacenter x64

Windows 7

Windows 7 Home Basic

Windows 7 Starter

Windows 7 Home Premium

Windows 7 Professional

Windows 7 Enterprise

Windows 7 Ultimate

Windows Server 2008 R2

Novell

NetWare

Unixware

SUSE Linux

NeXT

NEXTSTEP(即之后的Mac OS X)

Plan 9

Inferno

Prime Computer

Primos

西门子

BS2000 - 用于西门子公司的大型主机。

SINIX(也称Reliant UNIX) - 用于西门子公司的UNIX电脑系统。

分类三

个人电子助理(PDA)操作系统

Palm OS

Pocket PC

EPOC

Microsoft Windows CE

Linux

智能手机操作系统

Windows Mobile系列;windows phone 7

Embedded Linux由Montavista创造,在Motorola's A760,E680等机型上使用

Mobilinux由Montavista创造

Symbian OS系列

MeeGo(诺基亚与Intel联合宣布将推出一个全新的开源平台)

Android(Google手机操作系统)

国产手机系统

MTK系统(MTK是台湾联发科技股份有限公司的英文简称,英文全称叫MediaTek。)

分类四

个人电脑

个人电脑市场从硬件架构上来说目前分为两大阵营,PC机与Apple电脑。

它们支持的操作系统:

1Windows系列操作系统

由微软公司生产;

2 Unix类操作系统

如SOLARIS,BSD系列(FREEBSD,openbsd,netbsd,pcbsd);

3 Linux类操作系统

如Ubuntu,Suse Linux,Fedora,等

4 Mac操作系统

由苹果公司生产(Darwin),一般安装于MAC电脑。

大型电脑

最早的操作系统是针对20世纪60年代的大型主结构开发的,由于对这些系统在软件方面做了巨大投资,因此原来的计算机厂商继续开发与原来操作系统相兼容的硬件与操作系统。这些早期的操作系统是现代操作系统的先驱。现在仍被支持的大型主机操作系统包括:

Burroughs MCP-- B5000,1961 to Unisys Clearpath/MCP, present.

IBM OS/360 -- IBM System/360, 1964 to IBM zSeries, present

UNIVAC EXEC 8 -- UNIVAC 1108, 1964, to Unisys Clearpath IX, present.

现代的大型主机一般也可运行Linux或Unix变种。

嵌入式系统

嵌入式系统使用非常广泛的操作系统(如VxWorks、eCos、Symbian OS及Palm OS)以及某些功能缩减版本的Linux或者其他操作系统。某些情况下,OS指称的是一个内置了固定应用软件的巨大泛用程序。在许多最简单的嵌入式系统中,所谓的OS就是指其上唯一的应用程序。

分类五 类Unix系统

一个在Linux底下执行的客制化KDE桌面系统所谓的类Unix家族指的是一族种类繁多的OS,此族包含了System V、BSD与Linux。由于Unix是The Open Group的注册商标,特指遵守此公司定义的行为的操作系统。而类Unix通常指的是比原先的Unix包含更多特征的OS。

Unix系统可在非常多的处理器架构下执行,在服务器系统上有很高的使用率,例如大专院校或工程应用的工作站。自由软件Unix变种,例如Linux与BSD近来越来越受欢迎,它们也在个人桌面电脑市场上大有斩获,例如Ubuntu系统,但大部分都是电脑高手在使用。

某些Unix变种,例如HP的HP-UX以及IBM的AIX仅设计用于自家的硬件产品上,而SUN的Solaris可安装于自家的硬件或x86电脑上。苹果电脑的Mac OS X是一个从NeXTSTEP、Mach以及FreeBSD共同派生出来的微内核BSD系统,此OS取代了苹果电脑早期非Unix家族的Mac OS。经历数年的披荆斩棘,自由开源的Unix系统逐渐蚕食鲸吞以往专利软件的专业领域,例如以往电脑动画运算巨擘──SGI的IRIX系统已被Linux家族及Plan 9[3]丛集所取代。

Linux系统

Linux的是一套免费的32位和64位的多人多工的操作系统,运行方式同UNIX系统很像,但Linux系统的稳定性、多工能力与网络功能已是许多商业操作系统无法比拟的,Linux还有一项最大的特色在于源代码完全公开,在符合GNU GPL(General Public License)的原则下,任何人皆可自由取得、散布、甚至修改源代码。

就Linux的本质来说,它只是操作系统的核心,负责控制硬件、管理文件系统、程序进程等。Linux Kernel(内核)并不负责提供用户强大的应用程序,没有编译器、系统管理工具、网络工具、Office套件、多媒体、绘图软件等,这样的系统也就无法发挥其强大功能,用户也无法利用这个系统工作,因此有人便提出以Linux Kernel为核心再集成搭配各式各样的系统程序或应用工具程序组成一套完整的操作系统,经过如此组合的Linux套件即称为Linux发行版。

国内Linux发行版做的相对比较成功是红旗和中软两个版本,界面做得都非常的美观,安装也比较容易,新版本逐渐屏蔽了一些底层的操作,适合于新手使用。两个版本都是源于×××软件研究所承担的国家863计划的Linux项目,但无论稳定性与兼容性与国外的版本相比都有一定的差距,操作界面与习惯与 Windows越来越像,提供一定技术支持和售后服务,适宜于国内做低价的操作系统解决方案。

微软Windows

Microsoft Windows 系列操作系统是在微软给IBM机器设计的MS-DOS的基础上设计的图形操作系统。现在的Windows系统,如Windows 2000、Windows XP皆是建立于现代的Windows NT内核。NT内核是由OS/2和OpenVMS等系统上借用来的。

Windows 可以在32位和64位的Intel和AMD的处理器上运行,但是早期的版本也可以在DEC Alpha、MIPS与PowerPC架构上运行。 虽然由于人们对于开放源代码作业系统兴趣的提升,Windows的市场占有率有所下降,但是到2004年为止,Windows操作系统在世界范围内占据了桌面操作系统90%的市场。[4]

Windows系统也被用在低阶和中阶服务器上,并且支持网页服务的数据库服务等一些功能。最近微软花费了很大研究与开发的经费用于使Windows拥有能运行企业的大型程序的能力。

WindowsXP在2001年10月25日发布,2004年8月24日发布最新的升级包WindowsXP Service Pack 2。

微软最新的操作系统 Windows Vista(开发代码为Longhorn)于2007年1月30日发售[5]。Windows Vista增加了许多功能,尤其是系统的安全性和网络管理功能。Windows Vista拥有界面华丽的Aero Glass。

苹果Mac OS

苹果Mac OS系列操作系统是苹果公司 (原称苹果电脑)给苹果个人电脑系列设计的OS。

其他

大型主机以及嵌入式操作系统均与Unix或Windows家族关系不大,除了Windows CE、Windows NT Embedded 4.0及Windows XP Embedded是Windows的血亲产品,以及数种*BSD和嵌入式Linux包为例外。

少数较旧的OS今日依然在一些需要稳定性的市场中活跃,例如IBM的OS/2[6]BeOS以及XTS-400。

在达康时代狂潮过后,如AmigaOS与RISC OS等少数人使用的OS依然持续建立,以满足狂热的爱好者社群与特殊专业使用者。

未来

研究与建立未来的操作系统依旧进行著。操作系统朝提供更省电、网络化、华丽的使用者界面的方向来改进。Linux及一些类UNIX OS正努力让自己成为个人用户舒适的环境。GNU Hurd是一个企图完全兼容Unix并加强许多功能的微内核架构。微软Singularity是一个奠基于.Net并以建立较佳内存保护机制为目目标研究计划。

同名图书

基本信息 作 者: 孟庆昌,朱欣源 编著

出 版 社: 电子工业出版社

出版时间: 2009-11-1

开 本: 16开

引 ISBN : 9787121088582 包

定价:¥34.00

内容简介 本书是普通高等教育“十一五”国家级规划教材,北京高等教育精品教材。全书共分14章,分别介绍操作系统引论,进程和线程,死锁,调度,存储管理,文件系统,输入/输出管理, 用户接口服务,嵌入式操作系统,分布式操作系统,安全性与保护机制,实例研究1:UNIX, 实例研究2:Linux和实例研究3:Windows 2000。附录分别给出实验指导、Linux常用系统调用、部分习题参考答案,并为教师免费提供电子教案。

本书可作为大学本科及专科 计算机专业教材或考研参考书,也可作为计算机工作者的自学用书。

图书目录 第1章 操作系统引论

1.1 计算机硬件结构

1.1.1 处理器

1.1.2 存储器

1.1.3 I/O设备

1.1.4 总线

1.2 什么是操作系统

1.2.1 操作系统概念-

1.2.2 操作系统的主要功能

1.2.3 操作系统的地位

1.3 操作系统的发展历程

1.3.1 操作系统的形成

1.3.2 操作系统的发展

1.3.3 推动操作系统发展的动力

1.4 操作系统的类型

1.4.1 批处理系统

1.4.2 分时系统

1.4.3 实时系统

1.4.4 网络操作系统

1.4.5 分布式操作系统

1.4.6 其他操作系统

1.5 操作系统的特征

1.6 操作 系统结构设计

1.6.1 整体结构

1.6.2 层次结构

1.6.3 虚拟机结构

1.6.4 客户,服务器结构

1.7 本章小结

习题1

第2章 进程和线程

2.1 进程概念

2.1.1 多道程序设计

2.1.2 进程概念

2.2 进程的状态和组成

2.2.1 进程的状态及其转换

2.2.2 进程描述

2.2.3 进程队列

2.3 进程管理

2.3.1 进程图

2.3.2 进程创建

2.3.3 进程终止

2.3.4 进程阻塞

2.3.5 进程唤醒

2.4 线程

2.4.1 线程概念

2.4.2 线程的实现

2.5 进程的同步和通信

2.5.1 进程的同步与互斥

2.5.2 临界资源和临界区

2.5.3 互斥实现方式

2.5.4 信号量

2.5.5 信号量的一般应用

2.6 经典进程同步问题

2.7 管程

2.8 进程通信

2.8.1 消息传递系统

2.8.2 客户,服务器系统中的通信

2.9 本章小结

习题2

第3章 死锁

3.1 资源

3.1.1 资源使用模式

3.1.2 可剥夺资源与不可剥夺资源

3.2 死锁概念

3.2.1 什么是死锁

3.2.2 死锁的条件

3.2.3 资源分配图

……

第4章 调度

第5章 存储管理

第6章 文件系统

第7章 输入/输出管理

第8章 用户接口服务

第9章 嵌入式操作系统

第10章 分布式操作系统

第11章 安全性与保护机制

第12章 案例研究1:UNIX

第13章 实例研究2:Linux

第14章 实例研究3:Windows 2000

附录A 实验指导

附录B Linux常用系统调用

附录C 部分习题参考答案

实用操作

让操作系统不再假死机的高招

一、修改注册表,远离假死机困扰

很多假死机是由于运行的程序没有响应造成的。比如你在同一时间打开或启动的程序过多,导致系统资源消耗严重,就会出现程序停止响应的情况,这时我们可以按下“Ctrl+Alt+Del”组合键,在弹出的列表中选定标注为“没有响应”的程序项(如果有两个,则首先关闭上级程序),点击“结束任务”令其强行关闭即可让系统恢复正常运行,不过有时即使出现了“正在关闭……(该程序)”提示窗口,也会很长时间没有反应,遇到这种情况,我们可以修改注册表以达到快速关闭没有响应的程序以及允许强行关机的目的。

1.快速关闭没有响应的程序

在“开始”“运行”框中输入“Regedit”,打开“注册表编辑器”,在“HKEY_CURRENT_USER”下新建串值“Waittokillapptimeout”,将其键值设为“1000”(ms)或更小。如果采用了上述办法仍很长时间没有反应,就只得强行关机或重新启动了,不过最好先进行以下修改,以最大限度地减小死机对机器的损伤。

2.允许强行关机

进入“HEKY_USERS.DEFAULTControl Paneldesktop”,创建一个字符串“AutoEndTask”,将其键值设为“1”即可。对于真正的死机,一般只能两次按下“Ctrl+Alt+Del”组合键或按主机箱上的“Reset”键来重新启动了。

3.系统死机时自动重新启动

进入“HKEY_LOCAL_MACHINESystemCurrentControlSetControlCrashControl”主键,在右边的窗口中修改“AutoReboot”,将其键值改为“1”

小提示:上述注册表的修改在Windows的不同版本中情况可能不一样,如果没有相应键值,请勿随意添加。

二、采取相应对策,远离假死机困扰

相信任何朋友在计算机应用中,都或多或少地遭遇过各种各样“假死”这一严重影响运行效率的“顽疾”。但“假死”并非是解不开的魔咒,采取相应的手段可以减缓、甚至避免这一现象的发生。

关于对付较大AVI视频文件假死现象

一些朋友下载了不少电影,但有时在单击较大的AVI视频文件时,WinXP SP1往往会停止响应(WinXP SP1以上版本此问题已有较大改观),在进程中察看,发现Explorer.exe进程的CPU占用率100%,占用时间居然长达两个小时!

其实这是微软系统的缺陷:在资源管理器中单击较大的AVI文件时,系统需要先扫描该文件,执行一次循环来检查文件的所有部分,以便建立索引,假如文件较大(超过700MB)且文件中没有索引信息,系统查询该文件的索引所需的时间也较长,CPU使用率也较高。目前微软已经有针对WinXP SP1以上版本的修复工具,但只有正版用户可以到指定地址下载。

如何才能有效解决这一问题?方法很简单:右键单击目标文件夹,选择“属性-常规-高级”,去掉“为了快速搜索,允许索引服务编制该文件夹的索引”前面复选框的对勾,然后点击确定并应用,系统会问你是否将更改应用到所有文件夹和文件,假如实在受不了这项索引服务,就选择应用到所有文件夹,问题就会迎刃而解。

关于系统的任务栏假死现象

有时用户再操作过程中想在任务栏中切换窗口时,忽然发现点击任务栏中的图标没有任何反应了,就像系统死机一样,这就是Windows XP中常见的任务栏失去响应,又被称为“任务栏假死现象”。

原来这是Windows XP的“高级文字服务”功能出错造成的。Windows XP的“高级文字服务”包括了语音、手写和中文键盘输入服务,我们常用的输入法在Windows XP中也被归入高级文字服务。但是某些服务,如手写或语音功能可能与某些软件存在冲突,最明显的反映就是任务栏失去响应。例如我们清除文档记录点击“确定”或者打开多个IE快速关闭时,任务栏假死现象就很可能发生。

其实高级文字服务中的语音、手写功能使用的人并不多,我们完全可以将其关闭。打开“控制面板”,点击“切换到经典视图”,双击“区域和语言选项”,在对话框中点击“语言”标签,再单击“详细信息”按钮,在打开的“文字服务和输入语言”对话框中点击“语言栏”,选中“关闭高级文字服务”选项后保存设置即可

由于中文输入法也属于高级文字服务的一部分,因此关闭服务后导致的结果就是输入法切换栏消失,我们就只能用快捷键“Ctrl+Shift”来切换输入法了。

扩展阅读:

1. http://www.400win.com/4006Charges.html

2. http://qnr.cn/pc/mic/study/201004/433071.html

转载于:https://blog.51cto.com/techmsc/332451

本文链接:https://my.lmcjl.com/post/15022.html

展开阅读全文

4 评论

留下您的评论.