操 作 系 统

64
操 操 操 操 操 操 操操操操操操操操操操

Upload: tyler-hopkins

Post on 02-Jan-2016

67 views

Category:

Documents


0 download

DESCRIPTION

操 作 系 统. 计算机专业主干课程之一. 教育部人才培养模式改革和开放教育试点教材. 操 作 系 统. 第一章 操作系统引论 第二章 硬件环境 第三章 处理机管理、作业管理 第四章 进程管理 第五章 存储器管理 第六章 文件管理 第七章 设备管理 第八章 死 锁 第九章 现代操作系统技术与系统管理. 基本要求. 掌握基本原理 熟悉常用主要功能特点 了解操作系统设计思想与结构. 学习 方法. 知识: 需要记忆、积累 联想、对比 抓重点 技能: 需要训练、经验 方法、技巧 抓特点 - PowerPoint PPT Presentation

TRANSCRIPT

操 作 系 统操 作 系 统

计算机专业主干课程之一

教育部人才培养模式改革和开放教育试点教材

操 作 系 统第一章 操作系统引论第二章 硬件环境第三章 处理机管理、作业管理第四章 进程管理第五章 存储器管理第六章 文件管理第七章 设备管理第八章 死 锁第九章 现代操作系统技术与系统管理

基本要求–掌握基本原理–熟悉常用主要功能特点–了解操作系统设计思想与结构

学习方法

知识:需要记忆、积累 联想、对比 抓重点

技能:需要训练、经验 方法、技巧 抓特点

• 思路:逻辑思维 形象思维

操作系统知识体系结构知识结构: 操作系统是计算机技术与管理技术的结合知识面: 至少记住以下两句话:. 操作系统是方便用户,管理和控制整个计算机软硬件资

源的程序系统(系统软件). 操作系统有“六大类型”和“五大功能”(批处理,分时,实时,个人机系统,网络,分布式; 存储器,处理机,设备,文件管理和用户界面管理)知识点: “ 六大类型”和“五大功能” 的基本知识和应用技能

计算机操作系统是计算机技术和管理技术的结合。

管理技术: 1. 分门别类 2. 详细记录 3. 调度策略

数据结构 ( 堆 ) 栈 Stack 队 ( 列 ) Queue 表 ( 格 ) Table 树 ( 型 ) Tree 图 ( 论 ) Graphic 、 Chart 、 Map 、 Pi

cture 、 Drawing 场 ( 论 ) Field

第一章 操作系统引论

操作系统的形成的发展操作系统的特征和体系结构操作系统的类型和主要产品表征操作系统的用户界面

操作系统的概念 (1)

操作系统的英文名是 Operating System ,缩写成 OS 操作系统是一种软件,属于系统软件 从用户角度看,操作系统可以看成是计算机的硬件扩充 人机交互方式来看,操作系统是用户与机器的接口 用管理者角度看,操作系统也是管理资源的程序扩充

操作系统的概念 (2) 从计算机的系统结构看,操作系统是一种层次、模块

结构的程序集合,属于有序分层法,是无序模块的有序层次调用。

操作系统是计算机技术和管理技术的结合 操作系统相当于计算机系统的“管理机构”。操作系

统是为计算机用户服务,它的主人就是用户。 OS 是管理和控制计算机系统内各种硬件和软件资源、

有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。

操作系统的形成和发展

一个完整的计算机系统的组成(硬件和软件)什么是操作系统( OS 的定义,见上页)理解 OS 的定义,注意三点: 1 、 OS 是软件,且是系统软件。 2 、 OS 的基本职能是控制和管理系统内各种资

源,有效地组织多道程序的运行。 3 、 OS 提供众多服务,方便用户使用,扩充硬

件功能。

操作系统的主要功能 存储器管理(内存分配、地址映射、内存保护、

内存扩充) 处理机管理(作业和进程调度、进程控制、进

和通讯) 设备管理(缓冲区管理、设备分配、设备无关

性) 文件管理(文件存储空间的管理,文件操作的

一般管理,目录管理、文件读写和存储控制) 用户接口(命令、程序、图形界面)

操作系统的地位

计算机系统中软、硬件之间的关系。 操作系统是裸机之上的第一层软件,与硬件关

系尤为密切。 OS 是整个系统的控制管理中心,既管硬件,

又管软件。 OS 为其它软件提供运行环境。 各软件(系统软件、支撑(工具)软件、应用

软件)间有层次关系。

操作系统的发展历史 (1) 1946 年— 50 年代末

– 当时计算机处于电子管时代,根本没有操作系统。人们把这个时期称为“手工操作阶段”。顾名思义人们当时使用的计算机大量需要人工控制,还没有“管家”来为他们服务。

50 年代后期– 计算机的运行速度有了很大的提高,从每秒

几千次、几万次发展到每秒几十万次、上百万次。

操作系统形成的历史( 2 )

– 联机批处理系统– 脱机批处理系统

50 年代末— 60 年代中期– 此时计算机进入了第二代——晶体管时代。

为了解决人机矛盾,提高自动化程度,

操作系统形成的历史( 3 )

– 人们研制了监督程序,由该程序自动依次处理一系列任务

60 年代中期—— 70 年代中期– 计算机进入第三代——集成电路时代。在这

一时期操作系统初步形成并完善。– 出现了三种最基本的操作系统类型:多道批

处理操作系统、分时操作系统和实时操作系统。

操作系统形成的历史 (4)

80 年代至今–第四代计算机,大规模集成电路工艺

技术飞速发展。操作系统也有了进一步发展:出现了个人计算机上的操作系统、网络操作系统和分布式操作系统。

课程学习要领登高望远:“会当凌决顶,一觅众山小”三大宇宙观:

时空观: 计算机发展特点:速度加快和容量增大; 计算机工作:在特定时刻、特定地点建立“ 0” 和“ 1” ;静动观: 软硬件新产品不断涌现;阴阳观( “对立统一” ): 计算机人才和行业的剧烈竞争; 用户需求和产品的矛盾。

1.2 操作系统的特征和体系结构

OS 的基本特征 并 发 共 享 异步性 OS 的体系结构(程序模块的组织方式) 单块式结构 层次结构 微内核结构

操作系统的类型和主要产品

六大类型: 批处理操作系统

(单道批处理系统 、多道程序设计技术、 多道批处理操作系统)

分时操作系统 实时操作系统 个人机系统 网络操作系统 分布式操作系统

多道批处理操作系统 单道运行:每次只调一个用户程序进入内存让它运行 多道程序设计:即在系统内(内存)同时存放并运行

几道相互独立的程序。 多道程序设计的基础:是将运行过程进一步细化成几

个小的步骤,从而实现宏观上的并行。但从微观上看,内存中的多道程序轮流地或分时地占用处理机,交替执行。

多道程序系统 ≠ 多重处理系统 ≠ 多用户 ≠ 多终端

多道是指内存中驻留多个程序或一个程序的多个程序段,因此,多用户系统一定是采用多道技术。而多道系统不一定是多用户系统。多重处理系统一般指多 CPU 系统。当然,一个 CPU 的系统采用分时技术可以为多用户服务。多用户的关键技术是在用户之间要有保密保安措施。终端指用户使用的硬件设备,即使一个终端也可为多用户用,例如,银行的自动取款机 (ATM) 。

纯码 = 可重入代码

分时 实时 分时技术:把CPU 的时间分

成很短的时间片(例如,几十至几百毫秒)工作

随着时间片的时间减少,对换时间所占的比例随之增大。随着用户数目的不断增加,这种矛盾会越来越突出

特点是计算机规定人(用户)

基本特征:同时性、交互性、独立性和及时性

实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速反应

交互作用能力较差 特点是人(用户)规定计算

三种典型应用形式:过程控制系统、信息查询系统和事务处理系统。

个人机系统 单用户操作系统( DOS 、

WINDOWS 、 OS/2 、Windows 95/98等)

特征 个人使用 界面友好 管理方便 适于普及

多用户操作系统( Unix 、Linux )

特点 多用户使用 可移植性良好 功能强大 通讯能力强

网络操作系统 计算机网络 = 计算机技术 + 通讯技术 计算机网络的特征:分布性、自治性、互连性、可见性

( IP 地址或域名) 网络操作系统的功能:网络通讯、资源共享和保护、网

络服务和网络接口。 最大特点用户知道多个计算机的存在,可以远程登录。 目前流行的有 Sun公司的网络文件系统 NFS 、 Novell公司的 NetWare 、微软公司的的 Windows NT 和自由软件 Linux等。

分布式操作系统 多计算机系统除网络系统外还有分布式系统。 分布式系统特征:分布式处理、模块化结构、利用信息通信、实施整体控制。

分布式操作系统特点:透明性、灵活性、可靠性、高性能和可扩充性。

理解:运行在不具有共享内存的多台计算机上,但在用户眼里却像是一台计算机。其运行的基础是一群联网的计算机,其行为却像是一台虚拟的单处理计算机,用户不必关心计算机的 资源在什么地方、什么时间工作以及资源如何调配。

硬件相关: 应用程序

----------------------- 虚机器界面 操作系统----------------------- 物理机器界面 硬件

假如没有操作系统?怎样将目标代码送给硬件?怎样输出打印结果? →人们将对二进制程序操作 从二极发光管读答案

硬件相关(续 1):指实现代码中包含存储器的物理地址,包含对设备接口寄存器和设备接口缓冲区的读写等等

实现该工作的过程代码和硬件因素密切相关,即需要设置与测试、使用物理地址、设备接口寄存器等等

硬件相关必然复杂繁琐、代码量大 硬件相关的工作,其实现代码不通用

硬件相关(续 2):

由于操作系统承担了上述工作,在其之上的各类程序就没有必要直接同硬件打交道了。硬件改变时,操作系统相应变化即可,其他的程序不用作出改变

硬件相关还表现在有关硬件的状态必定带来对应代码的变化

与应用无关:是指这些工作是任何一个程序都需要的、最基本的工作

它们具有共性,工作过程相同与具体应用无直接关系,即与用户所关心的应用目标无直接关系

操作系统的主要产品系列

DOS MS Windows OS/2 UNIX Linux

微软 MS DOS 个人计算机的成功,逼得 IBM采取紧急战略行动 ,

决定要在 1980年尽快生产出微型计算机,以应付挑战

但没有操作系统不行。要想快就是找现成系统配套,IBM公司洽谈 CP/M 操作系统不顺利,机遇落到了微软公司

在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的 QDOS 操作系统的协议

当时西雅图公司并不知道 QDOS将被转卖给 IBM ,否则历史将会怎样演变,谁也无法知晓

IBM在 1981年推出个人计算机,宣布了 PC-DOS 操作系统 版权合同:没有限制 MS-DOS 随着 IBM PC 和 MS DOS普及, CP/M逐渐走向下坡路 MS DOS 有优良的文件系统 但受到 Intel x86 体系结构的限制 缺乏以硬件为基础的存储保护机制 它属于单用户单任务操作系统 从 1981 的 1.0版到 1998年在 Windows 95/98 之下的 7.0版, MS DOS历经了 16 个年头

迄今仍有 MS DOS爱好者继续开发各种 DOS 软件产品 兼容机市场, Compaq 与 Micro Channel

拯救苹果公司的Macintosh(MAC OS)

在推出 IBM PC 机后,市场卷起一股龙卷风 IBM 自己也没有料到产品会有如此巨大的成功 IBM 的成功说明必有其他公司失败。甚至连苹果公司也遇到

了问题,销售数量落到了兰色巨人的后面 苹果公司推出 Lisa 机遭到失败, Apple III 型也遭到失败 分析家们:微机市场上的战斗似乎兰色巨人要嬴了

施乐Palo Alto研究中心-70 年代的计算机研究思想库

世界上第一台个人计算机 Alto , 1972年在这里出现

图形界面,手持鼠标,面向对象程序设计 微机网络,桌面出版和激光打印等等 很多先进概念和技术的原型都首次出现在这里

1979年苹果公司允许施乐公司购买一百万股的苹果公司股票

作为回报,施乐公司允许苹果公司的少数人员,包括乔布斯,在有限的时间内考察施乐公司 Palo Alto 研究中心内部,并同该思想库的研究人员交谈

苹果公司对 Palo Alto 研究中心内的技术大感吃惊

他们更吃惊的是,施乐公司在拥有这些宝贵技术的同时竟然什么也没有做!

对 Palo Alto 研究中心这些科学家们而言,苹果公司的人是他们第一次遇到真正理解他们技术的人

这些科学家们后来有的去了苹果公司,微软公司,有的最终创办了自己的公司

在访问的基础上,苹果决定立即开发采用这些新技术的个人计算机

苹果公司已看到 IBM PC 机的技术有多么糟糕,但他们卖得又是特别

的好

MAC OS、鼠标的新型个人计算机 1984年,人们看到一则广告:“ What was that?”

和对 Macintosh 的介绍 , 这是配有图形界面操作系统 MAC OS 和鼠标的新型个人计算机

MAC 机一上市立即在市场上获得极大的成功 当年比尔 .盖茨都说,这是一台他的妈妈也能使用

的计算机 Macintosh 把苹果公司从连续的失败中拯救出来 苹果公司又开始向前发展正是 Mac先进图形界面操作系统技术,超前 PC 机若干年,造就了一批苹果的忠实追随者

一波三折的微软Windows操作系统 1983年 10月, PC 机竞争厂家的图形界面相关产品上市

面对市场压力,比尔 .盖茨在 1983年 11月 10日宣布推出 Windows 操作系统

然而宣布容易,交货就不简单了, Windows交货期的灾难,成了当年计算机界的笑柄

直到 1985年 11月 20日, Windows 1.0才正式上市

Windows的历史记录 Windows在当时微软历史上创了几个记录:延迟交货

次数最多,投入开发人员最多,开发时间最长,更换主管人员最多

不过几年之后, Windows终于创造了销售成绩最佳的历史记录

1992年 4月,推出 Windows 3.1, 1993年 5月,发表 Windows NT

Windows 95 , Windows CE , Windows 98 , Windows 2000 , Windows XP,.net

个人计算机采用 Windows占 90%以上,微软公司成了垄断 PC 行业的同义词

基于微内核的Mach操作系统 1975年 Rochester 大学开发了 RIG 操作系统 系统设计者之一 Richard Rashid 移居到 CMU后,在DARPA 支持下, 1984年开始了 Mach 的开发

希望 Mach 能与 UNIX兼容,运行线程,更好的进程通信机制,支持多处理机及好的虚拟存储系统

Mach 第一个版本是 1986年为 VAX 11/784 四 CPU多处理机发布

1988年的 Mach 2.5版包含了大量的 BSD UNIX 的代码 1989年, Mach 内核中去掉了所有的 BSD UNIX 的代码,剩下了一个纯的 Mach微内核,这就是 Mach 3.0版本,它是 OSF 发布的基础

Mach 中采用了许多当代操作系统使用的技术 , 微内核、线程、进程间消息传递和面向对象的设计方法等等

在 Mach 的基础上,有不少用于微处理器、多处理器以及超级计算机的操作系统和实时嵌入式操作系统陆续设计和开发出来,如 OSF/1 , DCE Unix, NeXT等等

IBM大型计算机操作系统 OS/390 90年代末期,电子商务发展刺激对计算能力的要求,导致大型机市场的再度升温

三十年的改进 ,IBM S/390已成为有高可靠性、可扩展性、及安全可用性的现代大型计算机系统

支持即 UNIX 95标准, UNIX 应用程序可在 IBM OS/390 上运行

同时还可继续运行 S/390 应用程序,包括 S/370 上开发的应用程序

包括 TCP/IP 的多种通信协议,具有高网络安全性采用面向对象程序设计、并行处理、分布式处理以及客户机 / 服务器技术,具有较强的互操作性、可移植性与可扩展性

由于历史渊源, OS/390 有不同的系统运行方式 : S/370 本机模式,支持原先在 S/370 运行的程序

ESA/390模式,支持到 10 个 240M 处理器内存和 256个通道

ESA/390 LPAR模式,系统可分成最多十个部分,每个部分有自己的 CPU ,存储器和通道,且分别运行不同的操作系统,如 S/370, ESA/370 和 ESA/390等

在 PC 机时代,人们曾经估计大型计算机会衰亡 IBM S/390 是大型计算机复活的一个典型 那么,在 21世纪的 Internet 和后 PC 的时代,大型机

还会有什么演化,只有让时间来说明

嵌入式操作系统的代表 VxWorks VxWorks 支持各种工业标准,包括 POSIX, ANSI C

和 TCP/IP 网络协议 VxWorks 运行系统的核心是一高效率的微内核微内核支持各种实时功能,包括快速多任务处理,

中断支持,抢占式和轮转式调度微内核设计减轻了系统负载并可快速响应外部事件 从只需几千字节存储器的深嵌式产品设计到复杂高端实时系统设计,开发人员有八十多个选件并可构成上百个不同的配置

VxWorks开发主机: Windows 9x,Windows NT, Sun Solaris, SunOS, HP-UX等

支持目标微处理器: 86, 68k, PPC, CPU 32, i960, SPARC, SPARCLite, SH, ColdFire, R3000, R4000, C16X, ARM, MIPS等

在“极地登陆者”号,“深空二号”和火星气候轨道器等登陆火星探测器上,就采用了 VxWorks

VxWorks负责火星探测器全部飞行控制,包括飞行纠正、载体自旋和降落时的高度控制等,而且还负责数据收集和与地球的通信工作

目前在国内也占据嵌入式开发系统市场主要份额

Internet时代与 Linux 1990年秋天, Linus在芬兰首都赫尔辛基大学学习

操作系统课程,因为上机需要排队等待, Linus买了台 PC 机,开发了第一个程序,程序包括两个进程,向屏幕上写字母,然后用定时器来切换进程

Linus 需要终端仿真程序来存取 Usenet新闻组的内容,于是他写了从调制解调器上接发信息的程序以及显示器、键盘和调制解调器的驱动程序

然后写了磁盘驱动程序,文件系统,一旦有了进程切换、文件系统和设备驱动程序,当然就拥有了一个操作系统原型,或者至少是它的一个内核

Linux就以这样极其古怪但也极其自然式问世

操作系统领域中新的操作系统

有线电视机顶盒领域, PowerTV 移动通信领域, EPOC 掌上计算机领域, Palm OS 数字影像领域, Digita

研究中的新的操作系统哈佛大学的 VINO ,使应用得以重用内核构件犹他州大学的 OSKit ,提供构造操作系统所需的基础构件,也提供高层次构件。 OSKit可用来构造新的 OS

MIT Exokernel, 该系统只有一个极小的核。系统抽象通过 Library Operating System完成

NASA 空间飞行中心 (GSFC) 研制 Beowulf项目开始于1994年,用商业化的微型计算机, Linux 和以太网等构造集群。已有世界各地的约六十个大学和研究机构在使用

加州大学伯克利分校 NOW 集群操作系统, 100台 Ultra SPARC-I 处理机集群,排名于世界最快的 200台超级计算机之内

加州大学伯克利分校Millennium项目 目的是在校园范围完成内一个“机群的机群 (Cluster

of Clusters)” 。在这个项目中,层次化的机群 Millennium 由五层构成,第一层,计算机工作站分布在十七个校园区内;第二层,多处理机服务器,提供各有关部门的计算服务;第三层, NOW组,每一个 NOW都一个机群;第四层,一个非常大规模的 NOW ,供全校园共享;第五层,整体计算层,它在 NOW组上构造,用于提供 NOW组和校园 NOW 的共享。

在 Millennium项目基础上,又提出了一个 Vineyard项目:一个面向未来的研究项目。作为 Millennium 的后续项目,它的目标超越了一个伯克利分校校园范围内的机群,它要通过高速网络连接其他工作站机群,从而构成了一个协同工作站机群联合体。

国内操作系统的研制状况 60年代末至 70年代初 杨芙清院士主持 我国第一台百万次集成电路计算机( 150 )操作系统 支持多道程序运行,在石油勘探领域成功应用 70年代中后期 杨芙清院士主持 我国第一个全部用高级语言书写的 DJS240 机操作系统 DJS200/XT2 层次管程结构模型, PCM 设计方法,活跃管程结构模式

国内操作系统的研制状况(续) GX73多机实时操作系统( 1978年) 国防科技大学, 1980年装在“远望” -I 号航天测量船上,完成了向太平洋发射运载火箭、潜水艇水下发射的测控任务;完成了我国第一颗同步地球卫星的测控、定轨、控制任务

“银河” -1 YHOS巨型操作系统( 1983年)国防科技大学,用于 YH-1 、 YH-2超级计算机,用于我国的石油勘探、天气预报和核物理研究

COSIX v 1.X/2.0 国产 UNIX 类操作系统(国家八五、九五重点科技攻关成果,以中软为首,联合国内 18 个单位共同完成)

微内核结构,安全级别超过 B1 ,中文界面 嵌入式操作系统 Hopen (女娲计划) Linux 类操作系统

思考和回顾 个人计算机的兴起,结束了 IBM 的霸主地位 Internet普及, Linux 的成功,极大地推动了

当代操作系统的研究发展活动据不完全统计,当前在 Internet 上,有超过 100 个操作系统的项目在 14 个国家中进行着

一批批的程序设计员们自愿通过互联网组织成为研究小组,从事着各类操作系统的研究开发工作

在一些影响全球的操作系统的诞生和发展过程中,大师们设计那些知名操作系统的初始动机真是各不相同的

一个操作系统成功的缘由,似乎也在于某种机遇,往往是有心裁花花不开,无心插柳柳成行

未来操作系统的发展是否还会是这个模式 ?在 Internet 时代,新概念、新思想、新原理和新

技术层出不穷谁又能预测,未来会有什么样的新型操作系统在国际互联网上问世呢!

思考和回顾(续 1)

操作系统的用户界面

命令界面

图形界面

系统调用界面

命令界面

注册和退出 UNIX 系统 UNIX 命令格式: 命令名 [选项 ] [参数 ]简单命令: who date cal pwd ls

图形界面

启动和退出桌面系统 启动的三种方法: 在文本方式下,使用命令: startx

在图形方式下,直接登录进入 图形和文本界面的相互切换: Ctrl+Alt+F2 ( 文 ---> 图 )

Ctrl+Alt+F1 ( 图 ---> 文 )

退出桌面系统( File->Exit )

图形界面( 2 )

桌面系统的总体图 使用鼠标 使用菜单 使用图标 使用窗口

系统调用

处理机执行状态:系统态和用户态 系统调用是操作系统内核与用户程序、应用程

序之间的接口。 用户程序要想得到 OS 的服务,必须使用系统

调用,它改变处理机的执行状态: 用户态 ------> 系统态 Unix 的系统调用(其形式类式类似于 C函数)有几十个。注意:不能作为命令使用。

表征操作系统的属性 (1)

响应比,响应系数:Rp = 作业响应时间 /运行时间(估计值)

影响因素 :CPU 速度,内外存对换, I/O 调度,用户数,时间片,事件优先权等 0

20406080

100120140160180200

批处

分时

交互

实时

响应系数设备利用率

表征操作系统的属性 (2) 并发性也叫“共行性”( concurrent ) ,

表现在:– 多个作业并发执行或一个用户作业的多个

程序段间并发执行– 多个输入输出设备间并发工作

信息的共享、保密与保护 ,常见方法有:– 给用户设置登录口令– 给文件加权限– 给文件加密

表征操作系统的属性 (3) 可扩充性、可移植性、可读性、可“生成”性

– “可扩充性”表示该操作系统可灵活地按照用户的需要增加功能

– “可读性”和“可移植性”均表现操作系统的适应性

安全可靠性 “ 行业评测性能比较”法

表征操作系统的属性 (4)

可测试性测试程序( Benchmark )有:

中央处理单元( CPU ):每秒百万条指令 MIPS

事件( Event ):每秒处理事务数 TPSMIPS 是指 CPU 速度,对于数学运算的

应用项目有重要意义。但对于一般的数据处理,涉及输入输出的动作较多, TPS测试更为切合实际。