Presentation is loading. Please wait.

Presentation is loading. Please wait.

主讲教师:霍其润 Email:jzhqr@163.com 操作系统 主讲教师:霍其润 Email:jzhqr@163.com.

Similar presentations


Presentation on theme: "主讲教师:霍其润 Email:jzhqr@163.com 操作系统 主讲教师:霍其润 Email:jzhqr@163.com."— Presentation transcript:

1 主讲教师:霍其润 Email:jzhqr@163.com
操作系统 主讲教师:霍其润

2 6W What is an operating system? What will be learning in this course?
Why must we study it? hoW will we learn it? Why do we need operating system? hoW does the operating system working?

3 课程主要内容介绍 用户接口 进程管理 处理机调度 死锁及其对策 存储管理 设备管理 文件管理

4 课程要求 按时出勤,有考勤记录,特殊情况需提前请假,缺课则请自学 。 上课期间遵守纪律,关闭或静音手机。
课堂作业当堂交,课下作业本周的作业在下周上课前提交,要求是用单页纸张,手写。请按时交,计入平时成绩,补交不计。 教案下载: 考试(闭卷)

5 课程要求 平时表现:40%(含考勤、作业、小测验等) 考试:60%

6 教 材

7 参考书 汤子瀛 计算机操作系统 修订版 西安电子科技大学出版社

8 参考书 汤子瀛 计算机操作系统 学习指导与题解 西安电子科技大学出版社

9 第一章 绪论 1.1 操作系统概念 1.2 操作系统的形成与发展 1.3 操作系统的基本类型 1.4 操作系统的特征 1.5 操作系统的服务
1.6 操作系统的功能 1.7 操作系统的结构

10 1.1 操作系统概念 1.1.1 操作系统的地位和目标 1.1.2 操作系统的作用和概念 1.1.3 操作系统举例

11 1.1.1 操作系统的地位和目标 图1.1 计算机系统的组成 应用软件(办公软件等) 软件 编辑软件,编译软件 系统软件 计算机系统
硬件 图1.1 计算机系统的组成

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

13 操作系统在计算机系统中的地位 紧贴系统硬件之上,所有其他软件之下。操作系统既不能作天气预报,也不能设计服装,更不能管理金融。只能运行在特定的硬件上 是其它软件的共同环境,任何应用软件的使用离不开操作系统,已经融为一体 是其它软件与硬件之间的桥梁,新的硬件设备需要操作系统的支持

14 引入操作系统的目标 有效性(系统管理的观点):管理和分配硬件、软件资源,合理地组织计算机的工作流程
方便性(用户的观点):提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别 可扩充性(开放的观点):硬件的类型和规模、操作系统本身的功能和管理策略、多个系统之间的资源共享和互操作

15 操作系统的作用(1) OS是计算机硬件、软件资源的管理者。
1.1.2 操作系统的作用 操作系统的作用(1) OS是计算机硬件、软件资源的管理者。 管理对象包括:CPU、存储器、外部设备、信息(数据和软件) 管理的内容:资源的当前状态(数量和使用情况)、资源的分配、回收和访问操作,相应管理策略(包括用户权限)

16 操作系统的作用(2) OS是用户使用系统硬件、软件的接口。
系统命令(命令行、菜单式、命令脚本式、图形用户接口GUI) 系统调用(形式上类似于过程调用,在应用编程中使用) 2003年,比尔·盖茨在其“数字十年”的报告中提出了自然用户接口NUI的概念,更提升了操作系统在计算机中的地位

17 操作系统的作用(3) OS是扩展机(extended machine)/虚拟机(virtual machine)。
在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对CPU) 另外,为合理组织工作流程:作业管理、进程管理

18 综上所述,可以非形式地把操作系统定义为:
操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合——它们管理和控制计算机系统中的硬件及软件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。

19 1.1.3 操作系统举例 MS OS: MS-DOS, MS-Windows 3.x, -Windows 95, -Windows NT, -Windows 2000,-Windows XP, -vista, -Windows7 UNIX: BSD,SRV4, OSF1, SCO UNIX, AIX, Solaris, HP UX, Linux , FreeBSD 其他:Mac OS(Macintosh);NetWare RTOS: VxWorks, pSoS, Nucleus

20 1.2 操作系统的形成与发展 推动操作系统发展的主要动力 “需求推动发展”
(1) 提高资源的利用率和系统性能:计算机发展的初期,计算机系统昂贵,用作集中计算 (2) 方便用户:用户上机、调试程序,分散计算时的事务处理和非专业用户(商业和办公、家庭) (3) 器件的发展:CPU的位宽度(指令和数据)、快速外存

21 操作系统的发展大体经历以下4代: (1)20世纪50年代中期至60年代初期为单任务操作系统时代;
(2)20世纪60年代中期至70年代中期为多任务和多用户操作系统时代; (3)20世纪70年代末期至80年代末期为微型操作系统时代; (4)20世纪90年代开始至今,为分布式操作系统时代。

22 1.2.1 手工操作 工作方式 1946 ~ 50年代(电子管时代),集中计算为主(计算中心),计算机资源昂贵(存储器)
用户:用户既是程序员,又是操作员;用户是计算机专业人员 编程语言:为机器语言 输入输出:纸带或卡片

23 计算机的工作特点 主要矛盾 用户独占全机:不出现资源被其他用户占用,资源利用率低
CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低 主要矛盾 计算机处理能力的提高,手工操作的低效率(造成浪费) 用户独占全机的所有资源

24 1.2.2 单道批处理系统 (simple batch processing)
50年代末 ~ 60年代中(晶体管时代):利用磁带把若干个作业分类编成作业执行序列,由一个专门的监督程序(Monitor)自动依次处理。可使用汇编语言开发。 批处理:应用程序在监控程序的管理下,一个接一个地自动切换运行,不需人工干预。 从磁带读入用户作业和编译链接程序; 编译链接用户作业,生成可执行程序; 启动执行; 执行结果输出。

25 用户提交作业:以纸带或卡片为介质。 卫星机:完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上。 监督程序(monitor)按照作业控制命令的要求来执行,完成如装入程序、编译、运行等操作。

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

27 批处理的主要特征 用户脱机使用计算机:作业提交后直到获得结果之前,用户无法与作业交互。

28 这时的问题:当作业遇到输入输出时,CPU便处于等待状态。

29 单道批处理的主要问题 资源利用不充分:大量内存空间用不完 CPU和I/O设备使用忙闲不均(取决于当前作业的特性) 对计算为主的作业,外设空闲
对I/O为主的作业,CPU空闲

30 1.2.3 多道程序系统 (multiprogramming system)
60年代中 ~ 70年代中(集成电路时代),CPU速度更快了,利用多道程序技术提高资源的利用率。 多道程序系统的运行特征 多道:内存中同时存放几个作业 宏观上并行运行:都处于运行状态,但都未运行完 微观上串行运行:各作业交替使用CPU 在当前运行的作业需作I/O处理时,CPU转而执行另一个作业。

31

32 单道(uniprogramming)和多道程序系统的比较

33 多道程序系统的资源利用效率特征 多道程序并行:充分利用系统资源 多道程序系统的资源利用效率特征是基于各作业对系统资源的需求差异得到的。
例如:有3个作业A、B、C,分别为计算、检索和打印作业,单道运行时间分别为5分、15分和10分钟。它们可并行在15分钟内完成3个作业。各资源的利用效率为: 多道程序并行:充分利用系统资源

34 多道程序系统上的技术 作业调度:作业的现场保存和恢复--上下文切换
资源共享:资源的竞争和同步--互斥(exclusion)和同步(synchronization)机制 内存管理:提高内存使用效率(为当前由CPU执行的程序提供足够的内存)--覆盖(overlay),交换(swap)和虚拟存储(virtual memory) 内存保护:系统存储区和各应用程序存储区不可冲突--存储保护 文件非顺序存放、随机存取 出现:作业管理、处理机管理、存储管理、设备管理、文件系统管理(file system)

35 60年代中期至今 分时处理(time share),又称会话型处理,是在多道程序设计基础上发展起来的一种处理方式。它把时间分隔技术应用到CPU的调度上,形成了一种新的操作系统。 (注意区分:硬件各部分的分时,如CPU和DMA使用总线和内存)。 35 35

36 一个典型的例子是一机多终端的实验管理系统,如图所示。
36

37 多道程序系统和多重处理系统(multiprocessing system)的区别:前者指多个程序同时在内存中交替运行,后者指有多个处理器来处理一个或一个以上程序。
37

38 1.2.4 进一步发展阶段 80年代后,随着计算机在各个领域的普及及各项技术的发展,OS也随之进一步的发展: 个人操作系统 网络操作系统
进一步发展阶段 80年代后,随着计算机在各个领域的普及及各项技术的发展,OS也随之进一步的发展: 个人操作系统 网络操作系统 分布式操作系统 嵌入式操作系统

39 1. 个人计算机操作系统 (Personal Computer Operating System)
针对单用户使用的个人计算机进行优化的操作系统。 个人计算机操作系统的特征 应用领域:事务处理、个人娱乐 系统要求:使用方便、支持多种硬件和外部设备(多媒体设备、网络、远程通信)、效率不必很高 常用的个人计算机操作系统 单用户单任务:MS-DOS 单用户多任务:OS/2, MS-Windows 3.x, -Windows 95, -Windows 98, -Windows Me, -Windows2000 Professional 多用户多任务:UNIX(SCO UNIX, Solaris x86, Linux, FreeBSD)

40 2. 网络操作系统 (NOS, Network Operating System)
网络操作系统是在通常操作系统功能的基础上提供网络通信和网络服务功能的操作系统。网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合。 网络功能与操作系统的结合程度是网络操作系统的重要性能指标。早期的做法是通常操作系统附加网络软件,过渡到网络功能成为操作系统的有机组成部分。它们的区别在于:网络功能的强弱、使用是否方便等

41 计算机网络 一些自主的计算机系统,通过通信设施相互连接,完成信息交换、资源共享、互操作和协同工作等功能。
引入计算机网络的目的:完成新的应用(进行自动的信息交换),提高性能-价格比(共享昂贵资源)

42 网络操作系统的功能 通常操作系统的功能:处理机管理、存储器管理、设备管理、文件管理等 网络通信功能:通过网络协议进行高效、可靠的数据传输
网络资源管理:协调各用户使用 网络服务:文件和设备共享,信息发布 网络管理:安全管理、故障管理、性能管理等 随着网络的发展,网络操作系统的功能将会有更新的变化, 因此网络操作系统也不是一成不变的。

43 3. 分布式操作系统 (Distributed Operating System)
进入20世纪90年代以来,随着超大规模集成电路制造业的飞速发展,一种以内存储器为中心,用紧密耦合方式设计的多机系统(Multiple-Processor System)显示出非凡的处理能力。它的机内管理者就是所谓的“分布式操作系统”(Distributed Operating System)。

44 分布式系统:处理和控制的分散(相对于集中式系统)
分布式操作系统是一种多处理器系统管理的操作系统,既适合于以网络为平台的松耦合多机系统,也适合共享存储器的紧耦合多机系统,它的基本特征是处理上的分布,即功能和任务的分布。 分布式操作系统的所有系统任务可在系统中任何处理机上运行,自动实现全系统范围内的任务分配并自动调度各处理机的工作负载。因此,分布式操作系统对用户是“透明”的。

45 分布式操作系统与网络操作系统的比较 耦合程度: 并行性: 透明性:用户是否知道或指定资源在哪个机器上(如CPU、内存或外设)
分布式系统是紧密耦合系统:分布式OS是在各机上统一建立的“OS 统治 ”,直接管理CPU、存储器和外设;统一进行全系统的管理 网络通常容许异种OS互连,各机上各种服务程序需按不同网络协议“协议统治” 并行性: 分布式OS可以将一个进程分散在各机上并行执行 网络则各机上的进程独立 透明性:用户是否知道或指定资源在哪个机器上(如CPU、内存或外设) 分布式系统的网络资源调度对用户透明,用户不了解所占有资源的位置 网络操作系统中对网络资源的使用要由用户明确指定 健壮性:分布式系统具有更强的容错能力(工作时系统重构)

46 很遗憾!目前还没有真正意义上可以商用的分布式操作系统。

47 4. 嵌入式操作系统 近年来,嵌入式系统如雨后春笋般地快速发展起来。
嵌入式系统是一种专用的微机应用系统,其处理方式单一,通过“量体裁衣”式的设计,将通用操作系统中的相关部分摘取出来,形成一种专用的操作系统(嵌入式系统不属于本书的讨论范围,感兴趣的读者可参考相关的教科书)。

48 1.3 操作系统的基本类型 多道批处理系统

49 多道批处理系统的特点 优点: 缺点: 资源利用率高:CPU和内存利用率较高 作业吞吐量大:单位时间内完成的工作总量大
用户交互性差:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改 作业平均周转时间长:短作业的周转时间显著增长

50 1.3.2 分时系统 (time-sharing system)

51 “分时”的含义:分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。
多个用户分时:单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的用户。有用户输入时由CPU执行,处理完一次用户输入后程序暂停,等待下一次用户输入——时走时停 通常按时间片(time slice)分配:各个程序在CPU上执行的轮换时间。 (注意区分:硬件各部分的分时,如CPU和DMA使用总线和内存)。

52 分时系统的特点 人机交互性好:在调试和运行程序时由用户自己操作 共享主机:多个用户同时使用 用户独立性:对每个用户而言好象独占主机
现在的许多操作系统都具有分时处理的功能。

53 分时系统的主要问题 及时接受输入:多个I/O端口,设立多路缓冲区 及时响应: 提高对换速度(快速外存) 限制用户数目
缩短时间片(可能引起对换次数增多,开销增大,程序总运行时间增大)

54 1.3.3 实时系统 (real-time system)
用于工业过程控制、军事实时控制、金融等领域,包括实时控制、实时信息处理,其主要特征是实时性和可靠性。 要求:响应时间短,系统可靠性高 任务的类型: 周期性实时任务:数据采集 非周期性实时任务:deadline,开始截止时间(最晚开始时间)和完成截止时间(最晚完成时间)。 实时系统的类型 实时控制系统:飞机的自动驾驶;火灾报警控制系统 实时信息处理系统:飞机自动订票系统;情报检索系统

55 实时系统的特征 实时时钟管理:提供系统日期和时间、定时和延时等时钟管理功能 过载保护:缓冲区排队,丢弃某些任务,动态调整任务周期
过载是指进入系统的任务数目超出系统的处理能力。 高度可靠性和安全性:容错能力(如故障自动复位)和冗余备份(双机,关键部件)

56 实时系统与批处理系统和分时系统的区别 专用系统:许多实时系统是专用系统,而批处理与分时系统通常是通用系统
实时控制:实时系统用于控制实时过程,要求对外部事件的迅速响应,具有较强的中断处理机构 高可靠性:实时系统用于控制重要过程,要求高度可靠,具有较高冗余。如双机系统 事件驱动:实时系统的工作方式:接受外部消息,分析消息,调用相应处理程序进行处理 可与通用系统结合成通用实时系统:实时处理前台作业,批处理为后台作业

57 目前的操作系统,通常具有分时、实时和批处理功能,又称作通用操作系统。可适用于计算、事务处理等多种领域,能运行在多种硬件平台上,如 UNIX系统、Windows NT等。一般具有通用化、小型化的特点。
通用操作系统具有较齐全的功能,是多处理方式的结合。目前大部分商业化的操作系统都是通用操作系统。 通常,将操作系统分为两大类: 通用操作系统 专用操作系统

58 1.4 操作系统的基本特征 并发性(Concurrency) 共享性(Sharing) 虚拟 异步性

59 1.5 操作系统的服务 服务类型 程序执行和终止(包括分配和回收资源) I/O操作 文件系统操作
1.5 操作系统的服务 服务类型 程序执行和终止(包括分配和回收资源) I/O操作 文件系统操作 通信:本机内,计算机之间(通常通信服务的使用者为进程,而不是笼统说"主机") 配置管理:硬件、OS本身、其他软件 差错检测

60 系统启动过程 首先,CPU执行只读存储器ROM中的一个称为BIOS的程序模块。该模块中的“硬件诊断程序”投入运行,检查硬件配置和设备状态,并在屏幕上显示内存容量和各个设备的连接情况。 其次,将外存储器上的“操作系统引导程序”读入内存。应当指出,这是一段很小的程序,功能非常有限。 最后,让刚被装入的引导程序立即投入运行,把操作系统的内核部分一一装入内存中,并将CPU控制权交给内核。内核运行起来,做一些必要的初始化工作,比如,内存分区、建立链表,创建必须的系统进程等。系统安排停当后显示系统提示符,并执行“CPU闲逛”程序,等待用户到来。

61 下图是操作系统启动过程的示意图。

62 操作系统的功能 1、用户接口 提供用户的使用接口,进行作业执行前的各种准备和作业结束的清理工作,以及为确保作业运行,为它们申请所必要的各种资源等。 2 、进程管理 在单道系统中,处理机被一个作业所独占,其分配和使用不发生资源竞争,管理比较简单。但在多道系统中,要组织多个作业同时运行,不可避免地会产生对处理机的竞争。处理机管理就是要解决处理机的合理使用问题。

63 3 、存储管理 这里所说的存储管理仅仅是对内存而言的。主要包括:用某种数据结构记录内存的使用情况,按照一定的策略对内存储器进行分配、实现内存保护和容量扩充等。 操作系统对存储器的管理有多种方式,如分区式、分页式、分段式等。

64 4 、设备管理 管理各类外围设备,根据一定的分配策略,将设备分配给某一应用程序,并在适当时候将设备收回,以备分配给其它应用程序。 另外,设备管理还包括输入输出程序Spooling、设备驱动程序及中断处理程序等。 发挥外设和主机的并行工作能力,是设备管理中必须考虑的问题。 5 、文件管理 文件是计算机的软件资源,程序和数据都是以文件的形式存储在外存设备上的。文件管理功能主要包括外存空间的管理与回收,对文件进行存取、检索、更新,及有效地实现文件共享。

65 1.7 操作系统的结构 1.7.1 整体或模块结构 1.7.2 分层结构或虚拟机 1.7.3 客户/服务器模型或微内核结构
1.7 操作系统的结构 随着操作系统的发展,功能越强,OS自身代码量越大--采用良好的结构:有利于保证正确性以及自身修改和扩充。 1.7.1 整体或模块结构 1.7.2 分层结构或虚拟机 1.7.3 客户/服务器模型或微内核结构

66 1.7.1 整体或模块结构 monolithic system or modular system
整体式结构是早期操作系统和一些较小的操作系统所采用的一种结构模式。它实际上是没有结构的,整个系统是一堆过程的集合,每个过程都可以随意调用其他过程。 整体式系统提供了两种处理机模式: (1) 用户态(运行用户程序) (2) 核心态(运行操作系统)

67 模块结构的特点:模块由众多服务过程(模块接口)组成,可以随意调用其他模块中的服务过程
整个系统按功能进行设计和模块划分。系统是一个单一的、庞大的的软件系统。这种结构思想来源于服务功能观点,而不是资源管理的观点。 模块结构的特点:模块由众多服务过程(模块接口)组成,可以随意调用其他模块中的服务过程 优点:具有一定灵活性,在运行中的高效率 缺点:功能划分和模块接口难保正确和合理;模块之间的依赖关系(功能调用关系)复杂(调用深度和方向),降低了模块之间的相对独立性--不利于修改

68 1.7.2 分层结构或虚拟机 layered system or virtual machine
从资源管理观点出发,划分层次。在某一层次上代码只能调用低层次上的代码,使模块间的调用变为有序性。系统每加一层,就构成一个比原来功能更强的虚拟机。有利于系统的维护性和可靠性。

69 层次系统是指按照操作系统中模块的功能和相互依存关系将其划分为若干个层次,除最底层模块外,任一层模块都建立在下一层模块的基础上,即任一层模块都只能调用其下层模块来得到服务,而不能调用其上层模块。
层次式系统的结构

70 分层结构的特点 优点: 缺点:降低了运行效率 功能明确,调用关系清晰(高层对低层单向依赖),有利于保证设计和实现的正确性
低层和高层可分别实现(便于扩充);高层错误不会影响到低层;避免递归调用 缺点:降低了运行效率 各系统对具体划分多少层次有不同的看法。

71 1.7.3 客户/服务器模型或微内核结构 client-server model or microkernel
把操作系统分成若干分别完成一组特定功能的服务进程,等待客户提出请求;而系统内核只实现操作系统的基本功能(如:虚拟存储、消息传递)。 微内核(micro-kernel):将更多操作系统功能放在核心之外,作为独立的服务进程运行; 服务进程(或称作“保护子系统”) 客户进程(系统客户和应用客户)--需支持多进程 本地过程调用 (LPC, Local Procedure Call):一种进程之间请求-应答式的消息(Message)传递机制。 消息:是一定格式的数据结构。①发起调用,送出请求消息②请求消息到达并进行处理③送出回答消息④整理回答消息,返回结果;如:对文件create, read, write

72 在客户/服务器系统中,需要把操作系统的服务功能划分为若干个服务进程,并让这些进程在用户态下运行。其中的每一个服务进程称为一个服务器,如内存服务器、进程服务器、终端服务器、文件服务器等。用户进程则称为客户进程。 客户/服务器系统的结构

73 微内核模式的特点 优点: 缺点: 良好的扩充性:只需添加支持新功能的服务进程即可 可靠性好:调用关系明确,执行转移不易混乱
便于网络服务,实现分布式处理:以同样的调用形式,在下层可通过核心中的网络传送到远方服务器上 (远地过程调用 RPC, Remote Procedure Call) 缺点: 消息传递比直接调用效率要低一些 (但可以通过提高硬件性能来补偿 )

74 小结 OS地位、目的和作用 OS分类:批处理、分时、实时、(通用)、多处理、个人、网络和分布式 OS的特征和服务 OS功能

75 习题(1) 1、什么是操作系统的三大作用? 2、操作系统的基本类型有哪些?各有什么特征? 3、多道程序和多重处理有何区别?


Download ppt "主讲教师:霍其润 Email:jzhqr@163.com 操作系统 主讲教师:霍其润 Email:jzhqr@163.com."

Similar presentations


Ads by Google