操作系统概述_第1页
操作系统概述_第2页
操作系统概述_第3页
操作系统概述_第4页
操作系统概述_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 操作系统概述操作系统概述操作系统操作系统2什么是操作系统?什么是操作系统?定义一:定义一: 利用一个或多个处理器的硬件资源利用一个或多个处理器的硬件资源 为系统用户提供一组服务为系统用户提供一组服务 管理辅助存储器(管理辅助存储器(secondary memory) 和输入和输入/输出设备(输出设备( I/O devices)定义二:定义二: 控制应用程序执行的程序控制应用程序执行的程序 充当应用程序和计算机硬件之间的接口充当应用程序和计算机硬件之间的接口32.1 操作系统的目标和功能操作系统的目标和功能 方便方便作为用户作为用户/计算机接口的计算机接口的OS 使计算机更易于使用

2、。使计算机更易于使用。 有效有效作为资源管理器的作为资源管理器的OS 允许以更有效的方式使用计算机系统资源。允许以更有效的方式使用计算机系统资源。 可扩展性可扩展性OS需要可扩展性需要可扩展性 允许在不妨碍服务的前提下,能有效地开发、允许在不妨碍服务的前提下,能有效地开发、测试和引入新的系统功能。测试和引入新的系统功能。42.1.1 作为用户作为用户/计算机接口的计算机接口的OS实用工具:实现了在创实用工具:实现了在创建程序、管理文件和控建程序、管理文件和控制制I/O设备中经常使用的设备中经常使用的功能。功能。不关心计算机硬件的细不关心计算机硬件的细节,把计算机系统看作节,把计算机系统看作是一

3、组应用程序。是一组应用程序。程序员开发,用一种程程序员开发,用一种程序设计语言描述。序设计语言描述。为程序员屏蔽了硬件的细为程序员屏蔽了硬件的细节,并为程序员使用系统节,并为程序员使用系统提供了方便的接口。提供了方便的接口。中介中介2.1.1 作为用户作为用户/计算机接口的计算机接口的OS6操作系统提供的服务:操作系统提供的服务: 程序开发:应用程序开发工具(编译器、调试器程序开发:应用程序开发工具(编译器、调试器等),帮助程序员开发程序。非核心部分。等),帮助程序员开发程序。非核心部分。 程序运行:内存空间分配,指令、数据加载,程序运行:内存空间分配,指令、数据加载,I/O设备初始化,系统调

4、度等。设备初始化,系统调度等。 I/O设备访问:不同设备访问指令不一致,设备访问:不同设备访问指令不一致,OS提提供统一接口,屏蔽细节,使用简单读写即可。供统一接口,屏蔽细节,使用简单读写即可。 文件访问控制:细节屏蔽,权限控制文件访问控制:细节屏蔽,权限控制 系统访问:资源和数据的保护(访问和完整性),系统访问:资源和数据的保护(访问和完整性),资源竞争冲突(死锁)等。资源竞争冲突(死锁)等。2.1.1 作为用户作为用户/计算机接口的计算机接口的OS7操作系统提供的服务:操作系统提供的服务: 错误检测和响应错误检测和响应 内部和外部硬件错误内部和外部硬件错误 存储器错误存储器错误 设备失败或

5、故障设备失败或故障 软件错误软件错误 算术溢出算术溢出 试图访问被禁止的存储器单元试图访问被禁止的存储器单元 OS无法确认应用程序请求等无法确认应用程序请求等 提供响应以清除错误条件,使其对正在运行的应用程提供响应以清除错误条件,使其对正在运行的应用程序影响最小。(终止运行、重试操作或发送错误报告)序影响最小。(终止运行、重试操作或发送错误报告)2.1.1 作为用户作为用户/计算机接口的计算机接口的OS8操作系统提供的服务:操作系统提供的服务: 记账记账 收集使用统计信息收集使用统计信息 监控性能监控性能 用于预计和评估用于预计和评估 记帐(多用户系统)记帐(多用户系统)2.1.1 作为用户作

6、为用户/计算机接口的计算机接口的OS9典型计算机系统的三个重要接口:典型计算机系统的三个重要接口: ISA:指令集体系结构:指令集体系结构 定义了计算机应遵循的机器语言指令系统定义了计算机应遵循的机器语言指令系统 是硬件与软件的分界线是硬件与软件的分界线 ABI:应用程序二进制接口:应用程序二进制接口 定义程序间二进制可移植性的标准定义程序间二进制可移植性的标准 API:应用程序编程接口:应用程序编程接口 API允许应用程序访问系统的硬件资源和服务允许应用程序访问系统的硬件资源和服务 有用户级有用户级ISA和高级语言(和高级语言(HLL)库调用来提供)库调用来提供2.1.1 作为用户/计算机接

7、口的OS102.1.2 作为资源管理器的作为资源管理器的OS 计算机是一组资源计算机是一组资源 资源用于数据移动、存储和处理资源用于数据移动、存储和处理 需要对资源的使用进行控制需要对资源的使用进行控制 OS负责资源的管理和控制负责资源的管理和控制 OS与其它软件一样,也是由处理器执行的一段程与其它软件一样,也是由处理器执行的一段程序或一组程序。区别在于程序的意图。序或一组程序。区别在于程序的意图。 OS经常会释放控制,而且需要依赖处理器才能恢经常会释放控制,而且需要依赖处理器才能恢复控制。复控制。 图:由图:由OS管理的主要资源管理的主要资源11内核,包含最常用的功能。最重要的资源。122.

8、1.3 OS的易扩展性的易扩展性原因:原因: 硬件升级和新硬件的出现硬件升级和新硬件的出现 新的服务新的服务 纠正错误:纠正错误:OS自己的错误,可能产生新错自己的错误,可能产生新错误。误。132.2 操作系统的发展操作系统的发展 没有没有OS,程序员直接与硬件打交道。,程序员直接与硬件打交道。 机器在控制台上运行(指示灯、触发器、输入机器在控制台上运行(指示灯、触发器、输入设备和打印机灯)设备和打印机灯) 预约预约调度调度(用户预约时间内空闲或无法完成)(用户预约时间内空闲或无法完成) 准备准备工作:程序作业:工作:程序作业:往内存加载编译器、源代往内存加载编译器、源代码,保存编译好的文件,

9、加载目标程序和公用函数并码,保存编译好的文件,加载目标程序和公用函数并链接。安装或拆卸磁带、准备卡片等,每个用户重复,链接。安装或拆卸磁带、准备卡片等,每个用户重复,出错重新开始。出错重新开始。用户顺序访问计算机,调度和准备浪费了时用户顺序访问计算机,调度和准备浪费了时间。间。2.2.1 串行处理142.2.2 简单批处理系统简单批处理系统 监控程序的软件监控程序的软件 用户不再直接访问计算机,把卡片或磁带中的作业提用户不再直接访问计算机,把卡片或磁带中的作业提交给计算机操作员交给计算机操作员组织成批处理作业组织成批处理作业 监控程序控制用户程序的执行顺序。监控程序控制用户程序的执行顺序。 用

10、户程序执行完成后返回监控程序。用户程序执行完成后返回监控程序。 监控程序自动调用下一个用户程序监控程序自动调用下一个用户程序 监控程序完成调度、错误处理等监控程序完成调度、错误处理等 遇到错误控制权返回监控程序遇到错误控制权返回监控程序 作业控制语言(作业控制语言(JCL) 特殊的编程语言特殊的编程语言 给监控程序提供指令,用于给监控程序提供指令,用于 确定使用哪个编译器确定使用哪个编译器 确定使用哪些数据确定使用哪些数据While(1)1装载下一个任务装载下一个任务2执行之执行之3处理结果和错误处理结果和错误单道批处理监控程序单道批处理监控程序中断中断返回返回315考虑了其它硬件功能:考虑了

11、其它硬件功能: 内存保护内存保护 用户程序不能访问监控程序内存区域。用户程序不能访问监控程序内存区域。 定时器定时器 防止一个作业独占系统。防止一个作业独占系统。 特权指令特权指令:只能监控程序执行:只能监控程序执行 中断:中断:向向用户程序放弃控制权用户程序放弃控制权或或从用户程序获得控制权从用户程序获得控制权 用户模式和内核模式用户模式和内核模式: 用户程序在用户模式下运行,不能访问被保护的内存用户程序在用户模式下运行,不能访问被保护的内存区域和执行特权指令。区域和执行特权指令。 监控程序在内核模式下运行,可能可访问被保护的内监控程序在内核模式下运行,可能可访问被保护的内存区域,并可执行特

12、权指令。存区域,并可执行特权指令。用户程序和监控程序交替运行,自动作业调度,串行,用户程序和监控程序交替运行,自动作业调度,串行,I/O速度慢,处理器利用率不高。速度慢,处理器利用率不高。2.2.2 简单批处理系统简单批处理系统162.2.3 多道程序批处理系统多道程序批处理系统96在等待 处理器必须等待I/O结束后才能继续执行下一指令。顺序执行例:从文件中读一条记录从文件中读一条记录执行执行100条指令条指令向文件中写一条记录向文件中写一条记录总计总计172.2.3 多道程序批处理系统单道程序设计单道程序设计两个程序的多道程序设计两个程序的多道程序设计182.2.3 多道程序批处理系统一个程

13、序在等待I/O操作,处理器能转换到另外一个程序多道程序设计(多任务处理),现代OS的主要方案三个程序的多道程序设计三个程序的多道程序设计192.2.3 多道程序批处理系统例:计算机用于用户程序的内存为250M,一个磁盘,一个终端,一台打印机。三个作业,其属性为:JOB2JOB3对CPU的要求很低202.2.3 多道程序批处理系统例资源利用直方图212.2.3 多道程序批处理系统需要有内存管理、作业调度等需要有内存管理、作业调度等提高了资源利用率提高了资源利用率用户无法与计算机交互用户无法与计算机交互山头林立:山头林立:哪些程序保哪些程序保留在内存?留在内存?随机应变:随机应变:挑选哪一个程挑选

14、哪一个程序运行?序运行?多道批处理监控程序多道批处理监控程序中断中断1如有新的任务,则将其加载到可执行队列如有新的任务,则将其加载到可执行队列2如有结束的任务,处理结果如有结束的任务,处理结果3如资源允许,从队列中选择一个任务执行如资源允许,从队列中选择一个任务执行222.2.4 分时系统分时系统 利用多道程序设计处理器可以同时处理多个作业利用多道程序设计处理器可以同时处理多个作业-同样可以设计处理器处理多个需要交互的作业。同样可以设计处理器处理多个需要交互的作业。 分时:多个用户共享处理器时间。分时:多个用户共享处理器时间。 多个用户通过终端同时访问系统。多个用户通过终端同时访问系统。 OS

15、在每个用户间进行换行、交替执行用户交互。在每个用户间进行换行、交替执行用户交互。 人的反应慢,等同于每个用户一台专用计算机。人的反应慢,等同于每个用户一台专用计算机。 特点:交互性、多用户同时性、独立性。特点:交互性、多用户同时性、独立性。 是一个联机的、多用户交互式的操作系统。是一个联机的、多用户交互式的操作系统。23 第一个分时系统第一个分时系统MIT开发的兼容分时系统(开发的兼容分时系统(CTSS)2.2.4 分时系统例:4个作业内存需要列表:JOB1:15000JOB2:20000JOB3: 5000JOB4:10000处理顺序:JOB1JOB2JOB3JOB1JOB4JOB22.2.

16、5 实时系统实时系统实时系统也是联机的操作系统,是随着计算机应用于实时控制和实时实时系统也是联机的操作系统,是随着计算机应用于实时控制和实时信息处理领域中而发展起来的。信息处理领域中而发展起来的。特点特点 即时响应即时响应 高可靠性高可靠性武器系统的实时控制、银行业务等武器系统的实时控制、银行业务等考虑因素:考虑因素: 实时时钟管理(定时处理和延时处理)实时时钟管理(定时处理和延时处理) 连续的人机对话连续的人机对话 过载保护过载保护 短期过载短期过载 缓冲区排队缓冲区排队 持续性过载持续性过载 拒绝某些任务拒绝某些任务 丢弃某些任务丢弃某些任务 降低某些任务的服务频率降低某些任务的服务频率

17、高度可靠性和安全高度可靠性和安全2.2.6 网络操作系统网络操作系统 计算机网络是通过通信设施将物理上分散的具有计算机网络是通过通信设施将物理上分散的具有自治功能的多个计算机系统互相连接起来的,实自治功能的多个计算机系统互相连接起来的,实现信息交换、资源共享、可互操作和协作处理的现信息交换、资源共享、可互操作和协作处理的系统。系统。 网络操作系统的研制开发是在原来各自计算机操网络操作系统的研制开发是在原来各自计算机操作系统的基础上进行的,按照网络体系结构的各作系统的基础上进行的,按照网络体系结构的各个协议标准进行开发,包括网络管理、通信、资个协议标准进行开发,包括网络管理、通信、资源共享、系统

18、安全和多种网络应用服务等。源共享、系统安全和多种网络应用服务等。2.2.7 分布式操作系统分布式操作系统 与网络操作系统粗看相同。与网络操作系统粗看相同。 定义为通过通信网络将物理上分布的具有自治的数据处定义为通过通信网络将物理上分布的具有自治的数据处理系统或计算机系统连接起来,实现信息交换和资源共理系统或计算机系统连接起来,实现信息交换和资源共享,协作完成任务。享,协作完成任务。 区别区别网络OS分布式OS有标准协议无标准协议计算机组织松散计算机紧密耦合资源使用不透明资源使用透明2.2.8 云计算操作系统云计算操作系统 云计算操作系统,又称云计算中心操作系统、云云计算操作系统,又称云计算中心

19、操作系统、云OS,是云计算后台数据中心的整体管理运营系统,是云计算后台数据中心的整体管理运营系统,它是指构架于服务器、存储、网络等基础硬件资它是指构架于服务器、存储、网络等基础硬件资源和单机操作系统、中间件、数据库等基础软件源和单机操作系统、中间件、数据库等基础软件管理海量的基础硬件、软资源之上的云平台综合管理海量的基础硬件、软资源之上的云平台综合管理系统。管理系统。 云计算操作系统通常包含以下几个模块:大规模云计算操作系统通常包含以下几个模块:大规模基础软硬件管理、虚拟计算管理、分布式文件系基础软硬件管理、虚拟计算管理、分布式文件系统、业务统、业务/资源调度管理、安全管理控制等几大模资源调度

20、管理、安全管理控制等几大模块组成。块组成。 282.3 主要的成就主要的成就五个重要的理论进展:五个重要的理论进展: 进程进程 内存管理内存管理 信息保护和安全信息保护和安全 调度和资源管理调度和资源管理 系统结构(旧版)系统结构(旧版)292.3.1 进程进程多个定义:多个定义: 一个正在执行的程序一个正在执行的程序 计算机中正在运行的程序的一个实例计算机中正在运行的程序的一个实例 可以分配给处理器并由处理器执行的一个实体可以分配给处理器并由处理器执行的一个实体 由单一的顺序的执行线索(线程)、一个当前状由单一的顺序的执行线索(线程)、一个当前状态和一组相关的系统资源所描述的活动单元。态和一

21、组相关的系统资源所描述的活动单元。 A unit of activity characterized by a single sequential thread of execution, a current state, and an associated set of system resources.30 系统中有多个作业、多个活动,对多个资源进行各种协调系统中有多个作业、多个活动,对多个资源进行各种协调操作。因此系统软件设计很困难,会产生各类错误。操作。因此系统软件设计很困难,会产生各类错误。 错误难以重现,难以解决。错误难以重现,难以解决。 产生错误的原因:产生错误的原因: 不正确的

22、同步:程序等待信号,而信号丢失或收到重复信号。不正确的同步:程序等待信号,而信号丢失或收到重复信号。 失败的互斥:共享资源。互斥实现一次只允许一个程序访问,互失败的互斥:共享资源。互斥实现一次只允许一个程序访问,互斥失败,多个同时访问,出现问题。斥失败,多个同时访问,出现问题。 不正确的程序操作:一个程序的输出只和输入有关,和其它程序不正确的程序操作:一个程序的输出只和输入有关,和其它程序无关。但当程序调度出现问题,重写相同内存区域等造成不可预无关。但当程序调度出现问题,重写相同内存区域等造成不可预测的相互干扰。测的相互干扰。 死锁:多个程序同时挂起,相互等待。死锁:多个程序同时挂起,相互等待

23、。进程产生的原因:有户口才好管理发邮件分房子统计网站访问量弓与箭网站累计访问人数:999有一个读操作,访问有一个读操作,访问+1有一个写操作,访问有一个写操作,访问+1读入读入999999+1=1000写入写入1000读入读入10001000+1=1001写入写入1001张三张三李四李四网站累计访问人数:999有一个读操作,访问有一个读操作,访问+1有一个写操作,访问有一个写操作,访问+1读入读入999999+1=1000写入写入1000读入读入999999+1=1000写入写入1000张三张三李四李四死锁:多个程序死锁:多个程序同时挂起,相互同时挂起,相互等待等待34如何解决?进程是解决问题

24、的基础。如何解决?进程是解决问题的基础。 进程的组成部分:进程的组成部分: 一段可执行的程序一段可执行的程序 程序所需要的相关数据(变量、工作空间、缓程序所需要的相关数据(变量、工作空间、缓冲区等)冲区等) 程序的执行上下文程序的执行上下文 上下文是上下文是OS用来管理和控制进程所需的内部数据。用来管理和控制进程所需的内部数据。2.3.1 进程35 进程列表 进程存储区 基址寄存器基址寄存器 界限寄存器界限寄存器 进程索引(当前进程) 程序计数器:执行 进程切换:保存和恢复上下文2.3.1 进程362.3.2 内存管理内存管理OS5个基本的存储器管理功能个基本的存储器管理功能进程隔离进程隔离

25、保护独立的进程,防止互相干涉数据和存储空间保护独立的进程,防止互相干涉数据和存储空间自动分配和管理自动分配和管理 动态分配动态分配 对程序员透明对程序员透明支持模块化程序设计支持模块化程序设计 程序员可以定义模块程序员可以定义模块 动态地创建、销毁模块动态地创建、销毁模块 改变模块的大小改变模块的大小保护和访问控制保护和访问控制 共享保护共享保护 共享访问控制共享访问控制长期存储长期存储 离线保存离线保存 (文件)(文件)37虚拟内存虚拟内存 允许程序员以逻辑的角度来访问内存允许程序员以逻辑的角度来访问内存 不管实际物理内存有多少,每个进程独享不管实际物理内存有多少,每个进程独享4G虚拟内存虚

26、拟内存 4G虚拟内存被分成虚拟内存被分成1000,000份,每份被称为份,每份被称为一个一个“页面页面”,大小是,大小是4K分页分页系统系统 分页系统中,虚拟地址页号页内偏移量分页系统中,虚拟地址页号页内偏移量 虚拟地址虚拟地址映射映射 内存内存物理地址物理地址2.3.2 内存管理382.3.2 内存管理39虚存寻址虚存寻址2.3.2 内存管理402.3.3 信息保护和安全信息保护和安全涉及对计算机系统的控制和所保存的信息。涉及对计算机系统的控制和所保存的信息。与操作系统相关的安全和保护问题分类:与操作系统相关的安全和保护问题分类: 可用行可用行 保护系统不被打断。保护系统不被打断。 保密性保

27、密性 保证用户无法访问到未授权的数据保证用户无法访问到未授权的数据 数据完整性数据完整性 保护数据不被未授权修改保护数据不被未授权修改 认证认证 用户身份的正确认证用户身份的正确认证 消息或数据的合法性消息或数据的合法性412.3.4 调度和资源管理调度和资源管理OS的一个关键任务是管理各种可用资源,并调度各种活的一个关键任务是管理各种可用资源,并调度各种活动进程使用这些资源。动进程使用这些资源。资源分配和调度策略应考虑的三个因素:资源分配和调度策略应考虑的三个因素: 公平性公平性 所有竞争某一特定资源的进程具有几乎相等和公平的访问该资源所有竞争某一特定资源的进程具有几乎相等和公平的访问该资源

28、的机会。的机会。 有差别的响应性有差别的响应性 区别对待不同的作业类区别对待不同的作业类 动态决策动态决策 有效性有效性 在矛盾的标准中寻求平衡在矛盾的标准中寻求平衡 最大的吞吐量最大的吞吐量 最小的响应时间最小的响应时间 尽可能多的用户尽可能多的用户422.3.4 调度和资源管理用于多道程序设计的一个用于多道程序设计的一个OS主要组件主要组件新作业万事俱备只欠CPU432.3.5 系统结构系统结构 系统是由一系列的层组成的视图系统是由一系列的层组成的视图 每个层执行一个相关的功能子集每个层执行一个相关的功能子集 每个层依赖于下一层来执行更原始的功能每个层依赖于下一层来执行更原始的功能 每个层

29、为上一层提供服务,并屏蔽服务细节每个层为上一层提供服务,并屏蔽服务细节 改变一层实现时,不需要改变别的层改变一层实现时,不需要改变别的层可以把问题分解成几个更易于处理的子问题可以把问题分解成几个更易于处理的子问题13 Shell12 用户进程11 目录10 设备9 文件系统8通信7虚存6本地辅存5原始进程4中断3 过程2 指令集1 电路P55 表2.4 OS设计层次442.4 现代操作系统的特征现代操作系统的特征 微内核微内核体系结构体系结构 只把一些最基本的功能放在内核中只把一些最基本的功能放在内核中 地址空间地址空间 进程间通信进程间通信(IPC) 基本的调度基本的调度 其它服务由运行在用

30、户模式下的进程提供其它服务由运行在用户模式下的进程提供 内核和服务程序分开内核和服务程序分开45 多线程多线程 进程划分成可以同时运行的多个线程(进程划分成可以同时运行的多个线程(Thread) 线程线程 可分派的单元可分派的单元 线程顺序执行,并且是可中断的线程顺序执行,并且是可中断的 进程进程 一个或多个线程一个或多个线程 相关的资源相关的资源 在同一个进程中运行多个线程,在线程间来回切在同一个进程中运行多个线程,在线程间来回切换所涉及的处理器开销要比在不同进程间切换的换所涉及的处理器开销要比在不同进程间切换的开销少。开销少。2.4 现代操作系统的特征46 对称多处理对称多处理 (SMP) 硬件上有多个处理器硬件上有多个处理器 这些处理器共享一个主存储器和这些处理器共享一个主存储器和I/O设备。设备。 所有的处理器都可以执行相同的功能。所有的处理器都可以执行相同的功能。 对成多处理器对成多处理器OS可以调度进程或线程到所有的处理器可以调度进程或线程到所有的处理器上运行上运行 优势优势 性能:高性能:高 可用性:只要有一个处理器正常,系统正常运行可用性:只要有一个处理器正常

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论