620 likes | 767 Views
操作系统原理 Principles of Operating System. 欧美学院信息技术系 E&A College Department of Information & Technology. 授课教师:高爱华 E-mail: gah2004gah@126.com QQ: 353920260. 课程形式 : 主课,实验课,习题课,作业. 学习要求: 按时上课,认真听讲,阅读参考书 认真记笔记,整理笔记 思考,讨论,提问. 参考教材. 计算机操作系统,汤子瀛等 ,西安电子科技大学出版社. 参考教材. 计算机操作系统教程,张尧学 史美林,清华大学出版社
E N D
操作系统原理 Principles of Operating System 欧美学院信息技术系E&A CollegeDepartment of Information & Technology
授课教师:高爱华 E-mail: gah2004gah@126.com QQ: 353920260
课程形式: 主课,实验课,习题课,作业 学习要求: 按时上课,认真听讲,阅读参考书 认真记笔记,整理笔记 思考,讨论,提问
参考教材 计算机操作系统,汤子瀛等 ,西安电子科技大学出版社
参考教材 • 计算机操作系统教程,张尧学 史美林,清华大学出版社 • 操作系统教程,王素华, 人民邮电出版社 • 现代操作系统,陈向群等译,机械工业出版社 • 计算机操作系统教程,周长林 左万历,高等教育出版社
参考教材 • 操作系统基础,屠立德 屠祁,清华大学出版社 • 操作系统原理DOS篇 张昆苍 清华大学出版社 • Operating Systems William Stallings • Modern Operating SystemAndrew S.Tanenbaum • Operating System Concept Abrahan Silberschatz, Peter B.Galvin
第一章 绪论 1.1 操作系统的概念 1.2 操作系统的历史 1.3 操作系统的特征 1.4 操作系统的分类 1.5 操作系统功能
教学目的 通过对本章的讲解使学生 1.了解本课程的整体介绍 2.理解操作系统的概念,功能、作用、分类,特征,以及结构设计
本章重点: 1、熟悉操作系统作用和定义,了解操作系统的历史。 2、熟练掌握多道程序设计技术的概念,掌握批处理系统、分时系统及实时系统三种操作系统基本类型,了解微机操作系统、网络操作系统和分布式操作系统。 3、掌握操作系统并发性、共享性、虚拟性和异步性等特征,了解现代操作系统特征,熟悉操作系统功能。
本章难点: • “多道程序系统”的功能实现 • “分时操作系统”的功能实现 • 真正理解操作系统的主要特征
1.1 操作系统概念 操作系统在计算机系统中的地位 紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境)
1.1 操作系统概念 操作系统( operating system,OS): 是计算机系统中的一个系统软件,它是这样一些程序模块的集合——它们管理和控制着计算机系统中的硬件及软件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个具有足够的功能、使用方便、可扩展、安全和可管理的工作环境,从而在计算机和用户之间起到接口的作用。
1.2 操作系统的历史 对一个事物,了解它的过去,才能懂得它的现在,才能预见它的将来。是什么推动了操作系统的发展呢?操作系统在其发展过程中有什么变化呢? 操作系统是在人们不断改善计算机系统性能和提高资源利用率的过程中逐步形成和发展起来的。操作系统发展的主要动力是“需求推动发展”
1.2 操作系统的历史 1.2.1 手工操作阶段 1.2.2 单道批处理系统 1.2.3 多道批处理程序系统 1.2.4 分时操作系统 1.2.5 实时操作系统 1.2.6 通用操作系统
1.2.1 手工操作阶段(No OS) 手工操作阶段—(1946 ~ 50年代,电子管时代) 计算机运算速度慢,没有操作系统。用户用机器语言编写程序,上机时独占计算机资源 用户需要自己写程序,自己上机操作,操作过程: • 把程序纸带装上输入机 • 启动输入机把程序和数据读入到计算机 • 通过控制台开关启动程序并运行 • 计算完毕,打印机输出结果,用户取走 • 第二个用户类似方式使用……
1.2.1 手工操作阶段(No OS) 1.脱机输入/输出技术(Off-Line I/O Technic) 1) 脱机输入技术 为解决低速输入设备与CPU速度不匹配的问题,人们将用户程序和数据在一台外围计算机的控制下,预先从低速输入设备输入到磁带上。
1.2.1 手工操作阶段(No OS) 2) 脱机输出技术 当程序运行完毕或告一段落,CPU需要输出时,无需直接把计算结果送至低速输出设备,而是高速地把结果送到磁带上,然后在另一台外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就大大加快了程序的输出过程。
1.2.2 单道批处理 (Simple Batch Processing System) 单道批处理系统—( 50年代末 ~ 60年代中,晶体管) 为了提供CPU的利用率,配备了专门的计算机操作员,并由监督程序把一批作业一起执行。 有两种方式:联机批处理和脱机批处理 图1.2早期脱机批处理模型
1.2.2 单道批处理 (Simple Batch Processing System) 磁带机 打印机 卡片 卡片阅读机 IBM1401 IBM7094 IBM1401 输入磁带 输出磁带 早期批处理系统
1.2.2 单道批处理 (Simple Batch Processing System) 1.批处理技术 批处理技术是指计算机系统对一批作业自动进行处理的一种技术。 所谓作业,是指用户程序及其所需的数据和命令的集合。 在脱机输入/输出方式中,事先已把一批作业记录在一盘磁带上,这意味着作业的处理是成批的,且处理顺序已经排定。
1.2.2 单道批处理 监督程序管理下的解题过程
1.2.2 单道批处理 2.单道批处理系统的主要特征如下: (1) 自动性。 (2) 顺序性。 (3) 单道性。
1.2.3 多道批处理程序系统 (Multiprogrammed Bath Processing System) 多道批处理系统—(60年代末 ~ 70年代中,集成电路) 1.多道程序 把一个以上的作业程序同时存放在主存中,并且“同时”处于运行状态,这些作业共享处理机时间和外部设备等资源。
1.2.3 多道批处理程序系统 引入多道程序设计技术可带来以下好处: (1)提高CPU的利用率。 (2)可提高内存和I/O设备利用率。 (3)增加系统吞吐量。 系统吞吐量—是指系统在单位时间内所完成的工作总量。
1.2.3 多道批处理程序系统 在多道批处理系统中,同时被执行的程序不止一个,在任意一个时刻,它们都处于开始点和终止点之间。20世纪60年代中期到70年代中期,人们利用多道批处理来提高资源的利用率
1.2.3 多道批处理程序系统 2.多道批处理系统的特征 (1)多道性。内存中可同时驻留多道作业。 (2)无序性。作业完成的先后顺序与其进入内存的顺序并无严格的对应关系,即后进入内存的作业有可能先完成 (3)调度性。需经过作业调度和进程调度。 作业调度。 进程调度。
1.2.3 多道批处理程序系统 3. 多道批处理系统的优缺点 批处理系统诞生于20世纪60年代初期,至今仍是主要的操作系统类型之一。 (1)资源利用率高。 (2)系统吞吐量大。 (3)平均周转时间长。 (4)无交互能力。
1.2.4 分时操作系统(Time-Sharing system) 分时操作系统—(70年代中期至今,大规模集成电路) 分时:把CPU的运行时间划分成一个个微小的时间片,并把这些时间片依次轮流的分配给各终端用户程序。 分时系统:分时操作系统是指在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过主机的终端,以交互方式使用计算机,共享主机中的资源。 设计目标:对用户的响应的及时性,及时地响应和服务于联机用户。
1.2.4 分时操作系统 分时系统特点: • 同时性(多路性) • 及时性 • 独立性(独占性) • 交互性
1.2.5 实时操作系统(Real-Time system) 实时系统是指在限定的时间内对输入进行快速处理并作出响应的计算机处理系统,它分为硬件实时系统和软件实时系统。 按场合作用,分两类 第一类:实时控制系统 如:工业控制,军事控制,... 第二类:实时信息处理系统 如:电讯(自动交换),银行,飞机订票
1.2.5 实时操作系统(Real-Time system) 实时系统目标: 实时响应及处理的能力和高可靠性。 实时系统特征: • 及时性 • 交互性 • 安全可靠性 • 多路性
1.2.5 实时操作系统(Real-Time system) 3) 实时系统和分时系统的区别 连接多台终端,都有交互作用,都要求一定的响应时间等等。因此,这两种系统很容易被混淆。在区分一个系统是分时系统还是实时系统时,除了要看系统的应用环境外,还要区分以下几点: (1) 系统的设计目标不同。 (2) 交互性的强弱。 (3) 响应时间的长短。
1.2.6 通用操作系统 分时系统与批处理系统、实时系统结合 原则:分时优先,批处理在后 “前台”:需频繁交互的作业 “后台”:时间性要求不强的作业
1.2.7 操作系统的进一步发展 (1)个人操作系统(单用户多任务) 计算机在某一时间内为单用户服务, 其追求目标是界面友好,使用方便。 (2)嵌入式操作系统 固化的软件,面向特定应用的、支持实时的多任务。
1.2.7 操作系统的进一步发展 (3)网络操作系统 • 它是基于计算机网络的 • 是在各种计算机操作系统上 • 按网络体系结构协议标准开发的软件 • 包括网络管理,通讯,安全,资源共享和各种网络应用。 • 其目标是相互通讯及资源共享。
1.2.7 操作系统的进一步发展 (3)网络操作系统 网络操作系统 用户应用程序 单机 操作系统 网络服务应用程序 通信软件(协议支持) 通信软件(协议支持) 局域网操作系统的结构
1.2.7 操作系统的进一步发展 (3)网络操作系统 计算机网络结构
1.2.7 操作系统的进一步发展 (4)分布式操作系统 它基于两种环境: 多机(CPU)系统或网络 是网络操作系统的更高级的形式, 它保持了网络操作系统的全部功能
1.2.7 操作系统的进一步发展 (4)分布式操作系统 特征: • 是一个统一的操作系统 • 资源进一步共享 • 透明性:资源共享,分布。用户并不知道,用户来讲是透明的。 • 自治性:处于分布式系统的多个主机处于平等地位
1.2.7 操作系统的进一步发展 网络和分布式的区别: • 分布具有各个计算机间相互通讯,无主从关系;网络有主从关系 • 分布式系统资源为所有用户共享;而网络有限制地共享 • 分布式系统中若干个计算机可相互协作共同完成一项任务。
1.3 操作系统的特征 1.并发(concurrence) 并行性和并发性是既相似又有区别的两个概念。 并行性:是指两个或多个事件在同一时刻发生。 并发性:是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指宏观上在一段时间内有多道程序在同时运行。
1.3 操作系统的特征 2.共享(sharing) 资源共享:是指系统中的硬件和软件资源不再为某个程序所独占,而是供多个用户共同使用。根据资源属性的不同,可有以下两种不同的资源共享方式。
1.3 操作系统的特征 2.共享(sharing) • 一种共享方式是系统中的很多资源虽能提供给多个作业(进程)使用,但在一段时间内却只允许一个作业访问该资源,这称为互斥共享。 • 另一种共享方式是允许在一段时间内,由多个进程同时对资源进行访问。这里所谓的“同时”仍然是宏观上的。而微观上,这些进程可能是交替地对该资源进行访问。
1.3 操作系统的特征 3.虚拟(virtual) 在操作系统中,所谓虚拟,是指把一个物理上的实体变为若干个逻辑上的对应物,前者是实的,即是实际存在的,而后者是虚的,是逻辑上的。
1.3 操作系统的特征 4.不确定性(uncertainty) 在操作系统中,不确定性主要有两种类型: (1) 程序执行结果是不确定的,即对同一程序使用相同的输入,在相同的环境下运行多次,却可能获得完全不同的结果,亦即程序是不可再现的。
1.3 操作系统的特征 4.不确定性(uncertainty) (2) 多道程序环境下程序的执行是以异步方式进行的,换言之,每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定的,因而也是不可预知的。这种不确定性却是允许的。
1.4 操作系统的基本类型 1.4.1 批处理操作系统 1.4.2 分时系统 1.4.3 实时系统 1.4.4 通用操作系统 1.4.5 个人计算机上的操作系统 1.4.6 网络操作系统 1.4.7 分布式操作系统
1.5 操作系统功能 1.处理机管理 对处理器的管理最总归结为对进程和线程的管理,包括: • 进程控制和管理; • 进程同步和互斥; • 进程通信; • 进程死锁; • 处理器调度,又分高级调度,中级调度,低级调度等; • 线程控制和管理。