Presentation is loading. Please wait.

Presentation is loading. Please wait.

高级操作系统 中国科技大学软件学院 丁箐 2 参考书 «» , 机械工业出版社, 2006 « Distributed Operating Systems » , Andrew S.Tanenbaum ,机械工业出版社 , 2006 《 Distributed.

Similar presentations


Presentation on theme: "高级操作系统 中国科技大学软件学院 丁箐 2 参考书 «» , 机械工业出版社, 2006 « Distributed Operating Systems » , Andrew S.Tanenbaum ,机械工业出版社 , 2006 《 Distributed."— Presentation transcript:

1 高级操作系统 中国科技大学软件学院 丁箐 (dingqing@ustc.edu.cn)

2 2 参考书 «» , 机械工业出版社, 2006 « Distributed Operating Systems » , Andrew S.Tanenbaum ,机械工业出版社 , 2006 《 Distributed Systems: Principles and Paradigms 》, Andrew S. Tanenbaum and Marten van Steen , Prentice-Hall, 2002 《 Distributed Systems: Concepts and Design 》, George Coulouris, Jean Dollimore and Tim Kindberg , 3rd Edition, Addison-Wesley, 2001 《 Distributed Systems 》, Sape J. Mullender , 2nd Edition, ACM Press, 1993 《 Distributed Systems 》, Sape J. Mullender , 2nd Edition, ACM Press, 1993 ,第 2 版, 机械工业出版社, 2002 《 Modern Operating Systems 》 ,第 2 版, Andrew S.Tanenbaum , 机械工业出版社, 2002

3 3 参考书 《》 《 Solaries 操作系统内核》 《》 《 Solaries 编程指南》 《 Linux 》 《 Linux 操作系统内核》 《 Linux 》 《 Linux 编程指南》 《 Windows NT 操作系统内核》 http://www.globus.org http://www.globus.org

4 4 1 操作系统回顾 2 分布式系统概述 3 分布式通信 4 分布式系统的同步 5 分布式进程和处理机 6 分布式文件管理 7 分布式共享存储 8 网格计算概述 教学内容

5 操作系统回顾

6 6 主要内容 1.1 操作系统的作用 1.2 操作系统的演变 1.3 操作系统的主要研究课题

7 7 主要内容 1.1 操作系统的作用 1.2 操作系统的演变 1.3 操作系统的主要研究课题

8 8 1.1 操作系统的作用 操作系统是计算机用户和计算机硬件之间的接口程序 模块,它是计算机系统的核心控制软件, 其职能是控 制和管理系统内各种资源,有效地组织多道程序的运 行,从而为用户提供良好的工作环境,达到使用方便、 资源分配合理、安全可靠等目的。 操作系统是现有软件系统中最复杂的软件之一。 Denning 认为,到目前为止,在操作系统的研究开发 方面主要取得了进程、内存管理、信息保护与安全、 调度与资源管理和系统结构等五项成就。

9 9 硬件系统和应用程序间的界面 由操作系统定义的软、硬件和数据,给程序员 以及使用者提供了方便的界面,使程序员和应 用程序更容易获取和使用计算机系统中的资源、 工具和服务。

10 10 应用程序 Web 浏览器、 GIS 、 ERP 中间件 DBMS 、 httpd 、 CORBA 、.NET 系统程序操作系统、 shell 、 C 编译器 固件 BIOS 硬件 PC 机、工作站、小型机、大型机

11 11 一台扩展的计算机 – 隐藏了具体的硬件细节 – 为用户提供了一台容易使用的虚拟的计 算机 一个资源管理器 – 每个程序分享时间 – 每个程序分享空间 操作系统概念

12 12 具有如下功能: ① 程序创建。 ② 程序执行。 ③ I/O 设备的访问。 ④ 控制对文件的访问。 ⑤ 系统访问。 ⑥ 查错和纠错。 ⑦ 簿记。 作为扩展的计算机

13 13 作为资源管理者 作为资源管理器的操作系统:

14 14 主要内容 1.1 操作系统的作用 1.2 操作系统的演变 1.3 操作系统的主要研究课题

15 15 1.2 操作系统的演变 操作系统发展至今已有三十多年。设计操作系 统主要有两个目的:第一,为程序的开发和执 行提供一个方便的环境;第二,为保证计算机 系统顺利执行,操作系统对各个计算活动进行 调度。

16 16 操作系统发展历史 第一代 1945 - 1955 – 电子管, 插件板 第二代 1955 - 1965 – 晶体管, 批处理系统 第三代 1965 – 1980 – 集成电路( IC )和多道程序设计 第四代 1980 – 现在 – VLSI, 个人计算机, 网络操作系统

17 17 操作系统家族 大型机操作系统 (e.g IBM OS/390) 服务器操作系统 (e.g. UNIX, NT) 多处理机操作系统 分布式操作系统 PC 机操作系统 (e.g Widows) 实时操作系统 (e.g VxWorks) 嵌入式操作系统 (e.g Windows CE) Smart card 操作系统 (e.g JVM)

18 18 串行处理系统 最早的计算机,从 20 世纪 40 年代末到 50 年代中 期,程序员直接与硬件接触,根本没有 OS 。 计算机运行在一个集成了指示器、各种开关、 一些输入设备以及一个打印机的控制台之上。 早期的这种系统存在两个问题: (1) 上机安排 (2) 启动时间

19 19 简单批处理系统 1. 将卡片装入 1401 机的读卡机 2. 将卡片中的程序读入磁带 3. 将磁带装入 7094 机, 完成计算 4. 将磁带装入 1401 机,打印结果

20 20 简单批处理系统(续) 简单批处理系统是专业计算机操作员(或机器)按作业 的性质将作业按类分成若干组,然后一组一组地来运行 作业。 在早期计算机系统中,引进简单批处理系统可以减少安 装磁带、装入程序和返绕磁带等有关的工序浪费的时间, 因此,也就减少了计算机的空闲时间。 批处理系统实质上不提供用户和程序之间的交互功能。 程序中的所有问题必须事先安排好,也不能进行联机修 改。 。

21 21 简单批处理系统(续) 简单批处理系统的中心思想是,通过应用一种 被称为监控器的软件,使用户不必再直接接触 机器,而是先通过卡片机和纸带机向计算机控 制器提交作业,由监控器将作业组织在一起构 成一批作业,然后将整批作业放入由监控器管 理的输入设备上,每当一个程序执行完毕返回 监控器时,监控器已自动装入下一个程序。

22 22 简单批处理系统(续) 批处理系统存在很多不方便之处,主要有:用户不能 与其作业交互以捕捉程序中的问题。用户程序中的所 有问题必须事先安排好,否则程序的排错就可能在转 储信息上盲目地进行。此外,对一个用户作业而言, 可能需要较长的周转时间。 在批处理系统中,为了避免有意或无意地读取他人的 卡片,必须建立监控和用户两种操作态,使其只有在 监控态下才能读控制卡。通过建立一组仅能在监控态 下执行的特权指令,操作系统就能保证在任何时候都 能控制整个系统。

23 23 多道程序批处理系统 多道程序设计技术就是在内存中同时保持若干 道程序,系统按某种调度策略交替执行这些程 序,使 CPU 保持最少的空闲时间。 多道程序设计的主要优点是通过将用户的 CPU 请求和 I/O 请求重叠起来的办法来有效地使用 CPU 。它设法让 CPU 总有事情可做,以此来 提高 CPU 的利用率。

24 24 多道程序批处理系统(续) 设想一台电脑配备 256KB 的可用内存空间 ( 未被 OS 占用 的 ) ,一个磁盘,一个终端和一台打印机。 3 个程序 JOB 1 、 JOB 2 和 JOB 3 ,同时被提交执行,如下表所列。 JOB 1 JOB 2 JOB 3 作业类型偏重计算 执行时间偏重 I/O 所需内存偏重 I/O 是否需要磁盘 5 min 是否需要终端 15 min 是否需要打印机 10 min

25 25 多道程序批处理系统(续) 多道程序设计在提高资源利用率方面产生的效果 单道程序设计多道程序设计 处理机使用 17%33% 内存使用 30%67% 磁盘使用 33%67% 打印机使用 33%67% 经过时间 30 min15 min 吞吐率 6 jobs/h12 jobs/h 平均响应时间 18 min10 min

26 26 分时系统 分时系统是一种由调度策略和多道程序设计技 术所构成的、同时供两个或多个用户使用的一 种经济实惠的系统。 分时系统的主要优点是:当程序正在执行时, 允许用户与计算机交互,从而大大缩短了系统 的响应时间,增加了用户调试程序和控制程序 运行的灵活性。

27 27 分时系统(续) 分时系统通常采用的实现方法是:先对每一 用户作业分定一个时间片,再按轮转方式来 执行这些作业。用户作业可以继续运行直至 其时间片执行完或发生一个( I/O )中断,才 暂停此作业的运行而让另一作业运行,暂停 的作业则等到再次轮到它时又可继续运行下 去,系统中的作业都用这种方式轮转执行。

28 28 实时系统 实时系统是在响应时间方面有严格制约的专用系统。 实时系统与其他普通的系统之间的最大不同之处就是 要满足处理与时间的关系。 实时系统与分时系统的区别在于:在分时系统中,快 速响应是需要的,但不是必需的;在实时系统中,处 理事务必须在适合于此系统的特定时间限额内完成。

29 29 实时系统(续) 实时操作系统主要是为联机实时任务服务的,相比分 时系统它有其自身的特点: (1) 与分时系统一样具有多路性和独立性。 (2) 对外部实时信号必须能及时响应,响应的时间间隔 要足以控制发出实时信号的那个环境。 (3) 整体性强。 (4) 有交互性,但这里人与系统的交互仅限于访问系统 中某些特定的专用服务程序。 (5) 要求有高可靠性和安全性,系统的效率则放在第二 位。

30 30 分布式操作系统 分布式系统中的客户 / 服务器( client/server )模型 – 位置透明性

31 31 分布式操作系统(续) “ 一个分布式系统是若干个独立的计算机的集 合,但是对该系统的用户来说,系统就像一台 计算机一样。 ” 硬件方面:各个计算机都是自治的 软件方面:用户将整个系统看作是一台计算机

32 32 主要内容 1.1 操作系统的作用 1.2 操作系统的演变 1.3 操作系统的主要研究课题

33 33 1.3 操作系统的主要研究课题

34 34 操作系统的主要成就 操作系统是现有软件系统中最复杂的系统软件 之一。到目前为止,操作系统已取得了 5 项主 要成就:进程、内存管理、信息的保护与安全 性、调度与资源管理、系统结构。 。

35 35 进程 进程是操作系统结构的基础。进程就是:可并 发执行的程序在一个数据集合上的运行过程。 进程由以下 3 部分组成: ①一个可执行的程序; ②该程序所需的相关数据 ( 变量、工作空间,缓 冲区等 ) ; ③该程序的执行上下文 (Context) 。

36 36 进程(续) 典型的进程实现

37 37 进程(续) 进程管理 shell 语言编写的命令执行器 : while (TRUE) { /* repeat forever */ type_prompt( ); /* display prompt */ read_command (command, parameters)/* input from terminal */ if (fork() != 0) {/* fork off child process */ /* Parent code */ waitpid( -1, &status, 0);/* wait for child to exit */ } else { /* Child code */ execve (command, parameters, 0);/* execute command */ }

38 38 进程管理 进程树( process tree ) – 进程 A 创建两个子进程: B 和 C – B 又创建三个子进程: D, E, 和 F

39 39 进程调度与同步 (a) 潜在死锁 (b) 实际的死锁.

40 40 进程间通信( IPC ) 连接两个进程的管道( pipe )

41 41 存储管理 操作系统的 5 条存储管理原则: 进程隔离。 自动分配和管理。 支持组件编程。 长时间存储。 保护和存取控制 。

42 42 存储管理(续) 看待存储系统的两种不同观点 (b) 操作系统设计者观点 (a) 用户观点

43 43 存储管理(续) 进程的三种段 : text, data, stack

44 44 文件管理 计算机系的文件系统结构

45 45 文件管理(续) (a) 在连接之前的两个目录 (b) 在执行连接调用 link( “/usr/jim/memo”,”/usr/ast/note”) 之后的两个目录 I-node

46 46 信息保护和安全性 同计算机系统和存储在其中的信息的存取控制 有关的 4 种保护策略: ①不共享。 ②共享原始程序或数据文件。 ③无存储子系统。 ④控制信息的分布。

47 47 信息保护和安全性(续) 同操作系统有关的安全和保护工作可分为以下 3 类: ①访问控制。 ②信息流控制。 ③确认。

48 48 调度和资源管理 操作系统的核心任务之一就是管理各种可获得的 资源以及合理地调度它们。任何资源分配和调 度策略都必须考虑公平性、不同敏感性以及效 率。

49 49 操作系统的系统调用 进程管理 POSIX 操作系统

50 50 文件操作

51 51 目录管理

52 52 其它的系统调用

53 53 Win32 API 调用

54 54 后续内容 操作系统回顾:对单处理机操作系统作简单的 回顾 分布式系统概述:对分布式系统进行介绍 分布式通信:介绍分布式情况下的通信模型 分布式系统的同步:关于分布式系统同步的内 容,包括事务和死锁等问题

55 55 后续内容(续) 分布式进程和处理机:介绍处理机、进程的组 织和调度,分布式系统的容错以及实时分布式 系统 分布式文件管理:介绍分布式文件系统的命名、 和共享 分布式共享存储:介绍内存一致性问题以及如 何实现 DSM 网格计算概述:以网格计算作为实例,介绍其 体系结构、相关模型和工具集,以及典型的网 格实现技术。


Download ppt "高级操作系统 中国科技大学软件学院 丁箐 2 参考书 «» , 机械工业出版社, 2006 « Distributed Operating Systems » , Andrew S.Tanenbaum ,机械工业出版社 , 2006 《 Distributed."

Similar presentations


Ads by Google