主讲教师: 万寿红 中国科学技术大学网络学院

47
主主主主 主主主 主主主主主主主主主主主主 主主主主主主

Upload: chip

Post on 06-Jan-2016

166 views

Category:

Documents


23 download

DESCRIPTION

操作系统. 主讲教师: 万寿红 中国科学技术大学网络学院. 教材 史杏荣、杨寿保 编著, 《 操作系统原理与实现技术 》 ,中国科学技术大学出版社, 1997 参考书 汤子瀛等著, 《 计算机操作系统 》 ,西安电子科技大学出版社, 1996 张尧学 史美林 , 计算机操作系统教程 , 清华大学出版社 周长林 左万历 , 计算机操作系统教程 , 高等教育出版社 作业 统一闭卷笔试. 课程目的: 了解操作系统的功能、基本原理和实现技术,加深对计算机运行环境的理解。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 主讲教师:  万寿红 中国科学技术大学网络学院

主讲教师: 万寿红中国科学技术大学网络学院

操作系统操作系统

Page 2: 主讲教师:  万寿红 中国科学技术大学网络学院

• 教材教材– 史杏荣、杨寿保 编著,《操作系统原理与实现技术》,史杏荣、杨寿保 编著,《操作系统原理与实现技术》,中国科学技术大学出版社,中国科学技术大学出版社, 1997 1997

• 参考书参考书– 汤子瀛等著,《计算机操作系统》,西安电子科技大汤子瀛等著,《计算机操作系统》,西安电子科技大学出版社,学出版社, 19961996

– 张尧学 史美林,计算机操作系统教程,清华大学出版张尧学 史美林,计算机操作系统教程,清华大学出版社社

– 周长林 左万历,计算机操作系统教程,高等教育出版周长林 左万历,计算机操作系统教程,高等教育出版社社

• 作业作业• 统一闭卷笔试统一闭卷笔试

Page 3: 主讲教师:  万寿红 中国科学技术大学网络学院

• 课程目的:了解操作系统的功能、基本原理和了解操作系统的功能、基本原理和实现技术,加深对计算机运行环境的理解。实现技术,加深对计算机运行环境的理解。

• 基本要求:掌握一般操作系统的进程管理、作掌握一般操作系统的进程管理、作业管理、存储管理、设备管理和文件管理的功业管理、存储管理、设备管理和文件管理的功能、原理与实现的基本思想,初步体会具体操能、原理与实现的基本思想,初步体会具体操作系统在这些方面的工作机制。作系统在这些方面的工作机制。

Page 4: 主讲教师:  万寿红 中国科学技术大学网络学院

1.1 1.1 什么是操作系统什么是操作系统 1.2 1.2 操作系统发展史操作系统发展史 1.3 1.3 操作系统的分类操作系统的分类 1.4 1.4 研究操作系统的几种观点研究操作系统的几种观点

Page 5: 主讲教师:  万寿红 中国科学技术大学网络学院

计算机系统( 层次结构 )

软件

硬件及固件(裸机)

应用软件

系统软件编辑软件,编译软件

操作系统

计算机系统的组成

1.1 1.1 什么是操作系统什么是操作系统 操作系统的地位和目标操作系统的地位和目标

Page 6: 主讲教师:  万寿红 中国科学技术大学网络学院

操作系统在计算机系统中的地位

计算机硬件操作系统

系统工具应用软件

应用用户

应用开发人员

操作系统开发人员

Page 7: 主讲教师:  万寿红 中国科学技术大学网络学院

• 有效性(系统管理人员的观点)• 方便性(用户的观点)

引入操作系统的目标 :

Page 8: 主讲教师:  万寿红 中国科学技术大学网络学院

OS 是计算机硬件、软件资源的管理者。• 管理的对象: CPU 、存储器、外部设备、信息

(数据和软件);• 管理的内容:资源的当前状态(数量和使用情

况)、资源的分配、回收和访问操作,相应管理策略。

操作系统的作用操作系统的作用

OS 是用户使用系统硬件、软件的接口。• 系统命令(命令行、菜单式、命令脚本式、图

形用户接口 GUI );• 系统调用(形式上类似于过程调用,在应用编

程中使用)。

Page 9: 主讲教师:  万寿红 中国科学技术大学网络学院

• 在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对 CPU );

• 合理组织工作流程:作业管理、进程管理。

操作系统的非形式化定义(关键点):系统软件,程序模块的集合,资源管理和用户接口功能

OS是扩展机 (extended machine)/虚拟机 (virtual machine)。

Page 10: 主讲教师:  万寿红 中国科学技术大学网络学院

• MS OS: MS DOS, MS Windows 3.x, Windows 95, Windows NT, Windows 2000

• UNIX: BSD, SRV4, OSF1, SCO UNIX, AIX, Solaris, Linux

• NOS: Novell Netware

操作系统举例操作系统举例

Page 11: 主讲教师:  万寿红 中国科学技术大学网络学院

1.2 1.2 操作系统的发展史操作系统的发展史

手工操作

批处理系统 ( batch processing)

多道程序系统 (multiprogramming system)

分时系统 (time-sharing system)

实时系统 (real-time system)

Page 12: 主讲教师:  万寿红 中国科学技术大学网络学院

• 工作方式– 用户:用户既是程序员,又是操作员;用户是计算机专业人员;

– 编程语言:为机器语言;– 输入输出:纸带或卡片;

1946 - 58 年(电子管):集中计算(计算中心),计算机资源昂贵;

手工操作手工操作

Page 13: 主讲教师:  万寿红 中国科学技术大学网络学院

• 主要矛盾–计算机处理能力的提高,手工操作的低效率(造成浪费);

–用户独占全机的所有资源;• 提高效率的途径

–专门的操作员,批处理

•工作特点–用户独占全机–CPU 等待用户

Page 14: 主讲教师:  万寿红 中国科学技术大学网络学院

• 批处理中的作业的组成:–用户程序–数据–作业说明书(作业控制语言)

58年- 64 年(晶体管):利用磁带把若干个作业分类编成作业执行序列,每个批作业由一个专门的监督程序( Monitor )自动依次处理。可使用汇编语言开发。

批处理系统批处理系统 ( batch processingm)( batch processingm)

Page 15: 主讲教师:  万寿红 中国科学技术大学网络学院

两种批处理方式 (1) 联机批处理(早期)(解决人机矛盾)•用户提交作业 •操作员合成批作业 •批作业处理:对批作业中的每个作业进行相同的处理:从磁带读入用户作业和编译链接程序,编译链接用户作业,生成可执行程序;启动执行;执行结果输出。

•问题:慢速的输入输出处理仍直接由主机来完成。输入输出时, CPU 处于等待状态。

Page 16: 主讲教师:  万寿红 中国科学技术大学网络学院

• 优点:同一批内各作业的自动依次更替,改善了主机 CPU 和 I/O设备的使用效率,提高了吞吐量。

• 缺点:磁带或磁盘需要人工装卸,作业需要人工分类,监督程序易遭到用户程序的破坏(由人工干预才可恢复)。

利用卫星机完成输入输出功能。主机与卫星机可并行工作。

两种批处理方式(2)脱机批处理(解决 cpu与 I/O设备速度不匹配的矛盾)

Page 17: 主讲教师:  万寿红 中国科学技术大学网络学院

CPU 和 I/O设备使用忙闲不均(取决于当前作业的特性)。–内存仅放一道运行程序–对计算为主的作业,外设空闲;–对 I/O为主的作业, CPU空闲;

单道批处理的主要问题

Page 18: 主讲教师:  万寿红 中国科学技术大学网络学院

•通道:用于控制 I/O设备与内存间的数据传输。启动后可独立于 CPU 运行,实现 CPU 与I/O的并行。

•中断是指 CPU 在收到外部中断信号后,停止原来工作,转去处理该中断事件,完毕后回到原来断点继续工作。

•引进缓冲技术,减少 cpu和外设的等待时间,提高 cpu和外设并行工作的程度。

通道和中断技术

Page 19: 主讲教师:  万寿红 中国科学技术大学网络学院

• 多道程序技术运行特征–多道:内存中同时存放几个作业;–宏观上并行运行:都处于运行状态,但都未运行完;

–微观上串行运行:各作业交替使用 CPU ;

64 年- 70年(集成电路):利用多道批处理提高资源的利用率。

多道程序系统多道程序系统 (multiprogramming system)(multiprogramming system)

Page 20: 主讲教师:  万寿红 中国科学技术大学网络学院

多道程序系统上的技术

•作业调度•资源共享•内存使用•内存保护•文件非顺序存放、随机存取

作业管理、处理机管理、存储管理、设备管理、文件系统管理 (file system)

Page 21: 主讲教师:  万寿红 中国科学技术大学网络学院

• 假脱机批处理–使用多道程序设计技术和通道技术,由输入和输出进程实现在低速设备和高速设备(磁盘)之间的信息传输任务;

–在联机方式下实现脱机批处理操作,消除人工干预,提高系统资源利用率;

–现代操作系统中广泛使用假脱机处理技术。

Page 22: 主讲教师:  万寿红 中国科学技术大学网络学院

多道批处理系统的资源利用效率特征多道批处理系统的资源利用效率特征是基于各作业对系统资源的需求差异得到的。

例如:有 3个作业 A、 B、 C,分别为计算、检索和打印作业,单道运行时间分别为 5分、 15分和 10分钟。它们可并行在 15分钟内完成 3个作业。各资源的利用效率为:

CPU 打印机 磁带单道 17% 33% 50%

多道 33% 66% 100%

Page 23: 主讲教师:  万寿红 中国科学技术大学网络学院

•多道批处理系统的特点

• 优点:–资源利用率高: CPU 和内存利用率较高;–作业吞吐量大:单位时间内完成的工作总量大。

• 缺点:–用户交互性差:不利于调试和修改;–作业平均周转时间长:短作业的周转时间显著增长。

Page 24: 主讲教师:  万寿红 中国科学技术大学网络学院

• “ 分时”的含义分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。–多个用户分时–通常按时间片 (time slice) 分配:各个程序在 CPU上执行的轮换时间。

–设计目标:对用户的请求及时响应,并在可能条件下尽量提高系统资源的利用率。

–适合办公自动化、教学及事务处理等要求人机会话的场合。

70年代中期至今 分时系统分时系统 (time-sharing system)(time-sharing system)

Page 25: 主讲教师:  万寿红 中国科学技术大学网络学院

主机

终端

分时系统示意图

Page 26: 主讲教师:  万寿红 中国科学技术大学网络学院

分时操作系统特点

•多路性•交互性 •“独占”性•及时性

同时有多个用户使用一台计算机宏观上:是多个人同时使用一个 CPU

微观上:多个人在不同时刻轮流使用 CPU用户根据系统响应结果进一步提出新请求 ( 用户直接干预每一步 )用户感觉不到计算机为其他人服务( OS提供虚机器,各个用户的虚机器互不干扰)系统对用户提出的请求及时响应

Page 27: 主讲教师:  万寿红 中国科学技术大学网络学院

• 要求:响应时间短,在一定范围系统可靠性高• 任务的类型:

– 周期性实时任务– 非周期性实时任务

用于工业过程控制、军事实时控制、金融等领域

实时系统实时系统 (real-time system)(real-time system)

Page 28: 主讲教师:  万寿红 中国科学技术大学网络学院

•并发 (concurrency)•共享 (sharing)•虚拟 (virtual)•异步性 (asynchronism)

操作系统的特征操作系统的特征

Page 29: 主讲教师:  万寿红 中国科学技术大学网络学院

• 在多道程序处理时,宏观上并发,微观上交替执行(在单处理器情况下)。

• 程序的静态实体是可执行文件,而动态实体是进程。

多个事件在同一时间段内发生。操作系统是一个并发系统,各进程间的并发,系统与应用间的并发。操作系统要完成这些并发过程的管理。并行 (parallel) 是指在同一时刻发生。

并发 (concurrency)

Page 30: 主讲教师:  万寿红 中国科学技术大学网络学院

共享 (sharing)

• 互斥共享:资源分配后到释放前,不能被其他进程所用。

• 同时访问• 资源分配难以达到最优化

多个进程共享有限的计算机系统资源。操作系统要对系统资源进行合理分配和使用。资源在一个时间段内交替被多个进程所用。

Page 31: 主讲教师:  万寿红 中国科学技术大学网络学院

虚拟 (virtual)

• CPU --每个用户(进程)的 " 虚处理机 "• 存储器--每个进程都占有的地址空间(指令+数据+堆栈)

• 显示设备--多窗口或虚拟终端 (virtual terminal)

一个物理实体映射为若干个对应的逻辑实体--分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。

Page 32: 主讲教师:  万寿红 中国科学技术大学网络学院

异步性 (asynchronism)

• 进程的运行速度不可预知:分时系统中,多个进程并发执行, "时走时停 ",不可预知每个进程的运行推进快慢

• 判据:无论快慢,应该结果相同--通过进程互斥和同步手段来保证

• 难以重现系统在某个时刻的状态(包括重现运行中的错误)

也称不确定性,指进程的执行顺序和执行时间的不确定性;

Page 33: 主讲教师:  万寿红 中国科学技术大学网络学院

1.3 1.3 操作系统的分类操作系统的分类操作系统分类主要讨论操作系统的功能特征。

1.3.1 批处理操作系统 1.3.2 分时操作系统 1.3.3 实时操作系统 1.3.4 网络操作系统 1.3.5 分布式操作系统

Page 34: 主讲教师:  万寿红 中国科学技术大学网络学院

作业的处理流程– 作业提交:作业的输入;– 作业执行– 作业完成:作业的输出;

1.3.1 批处理操作系统 (Batch Processing Operation System)

批处理的主要特征– 用户脱机使用计算机– 作业成批处理– 多道程序并行

三种批处理类型– 单道批处理操作系统;– 多道批处理操作系统;– 远程批处理系统

Page 35: 主讲教师:  万寿红 中国科学技术大学网络学院

把计算机的系统资源(尤其是 CPU 时间)进行时间上的分割,每个时间段称为一个时间片( time slice),每个用户依次轮流使用时间片。

1.3.2 分时操作系统 (Time Sharing Operating System)

分时的定义

分时系统的特征• 多路性:多个用户同时工作。• 独立性:各用户独立操作,互不干扰。• 交互性:系统能及时对用户的操作进行响应,显著提高调试和修改程序的效率:缩短了周转时间。

Page 36: 主讲教师:  万寿红 中国科学技术大学网络学院

实时系统的特征– 实时时钟管理:提供系统日期和时间、定时和延时等时钟管理功能;

– 及时性:响应时间的要求;– 多任务管理:系统的并发性和随机性;– 高度可靠性和安全性:容错能力(如故障自动复位)和冗余备份(双机,关键部件);

实时操作系统主要用于过程控制、事务处理等有实时要求的领域,其主要特征是实时性和可靠性。

1.3.3 实时操作系统 (Real Time Operating System)

Page 37: 主讲教师:  万寿红 中国科学技术大学网络学院

• 通常操作系统的功能:处理机管理、存储器管理、设备管理、文件管理等;

• 网络通信功能:通过网络协议进行高效、可靠的数据传输;

• 网络资源管理:协调各用户使用;• 网络服务:文件和设备共享,信息发布;• 提供网络接口

1.3.4 网络操作系统 (NOS, Network Operating System)

Page 38: 主讲教师:  万寿红 中国科学技术大学网络学院

分布式系统:处理和控制的分散(相对于集中式系统)

1.3.5 分布式操作系统 (Distributed Operating System)

多机合作:自动的任务分配和协调

坚强性:计算机或通路发生故障时,其它部分可自动重构成一个新的系统,继续工作

Page 39: 主讲教师:  万寿红 中国科学技术大学网络学院

• 结构的观点

• 资源管理的观点

• 进程的观点

• 用户观点

1.41.4 研究操作系统的几种观点研究操作系统的几种观点

Page 40: 主讲教师:  万寿红 中国科学技术大学网络学院

操作系统是由一些可同时独立运行的进程和一个对这些进程进行协调的核心组成。

进程的观点

进程(任务):完成某一特定功能的程序是程序的一次执行过程是动态有生命的,当它执行时存在,否则消亡

进程是并发程序的执行,是独立运行的基本单位,是资源分配的基本单位。

Page 41: 主讲教师:  万寿红 中国科学技术大学网络学院

操作系统 ---资源管理者 硬件资源:

CPU,内存 ,外部设备 (I/O设备,外存等 ) 软件资源:

硬盘上的文件 ,信息

资源管理的观点

操作系统的主要功能: 处理机管理 存储器管理 I/O设备管理 文件管理

Page 42: 主讲教师:  万寿红 中国科学技术大学网络学院

管理资源• 记录资源使用状况 如 哪些资源空闲,好坏与否,被谁使用 ,使用多长时间等• 合理的分配资源

静态分配策略 ( 在程序运行前分配,但效率不高 )动态分配策略 ( 在程序运行过程中何时用资源,何时分配。其缺点是会出现死锁 )

• 具体完成分配• 回收资源

资源管理的目的实现资源共享提高资源利用率

Page 43: 主讲教师:  万寿红 中国科学技术大学网络学院

传统的操作系统设计方法---结构化程序设计方法

设计思想: a.按功能划分成若干模块 b. 规定模块间的接口 c.分别对各模块独立设计、研制

结构的观点 模块结构法:

缺点:a. 接口规定困难b. 无序性:模块间调用关系复杂

Page 44: 主讲教师:  万寿红 中国科学技术大学网络学院

操作系统的设计原则• 可维护性:

– 改错性维护– 适应性维护– 完善性维护

• 可靠性:– 正确性– 稳健性– 可理解性

• 性能:有效地使用系统资源;尽可能快地响应用户请求;

Page 45: 主讲教师:  万寿红 中国科学技术大学网络学院

设计思想: a. 将功能按功能流图的调用次序排成若干层 b.各层之间的模块只能单向调用

层次结构法(有序分层法):

优点:a. 无序改为有序:减少设计的返工现象b. 提高系统的可读性、可适应性、可靠性:方便系统的调试和维护

全序的层次关系:同层模块间不存在相互调用 半序的层次关系:同层模块间可以相互调用

Page 46: 主讲教师:  万寿红 中国科学技术大学网络学院

命令接口程序级接口

用户观点

Page 47: 主讲教师:  万寿红 中国科学技术大学网络学院

本章的重要概念及相关要求本章的重要概念及相关要求

• 了解操作系统发展史;了解操作系统发展史;

• 了解操作系统分类; 了解操作系统分类;

• 研究操作系统的几种观点研究操作系统的几种观点