计算机操作系统ch1.ppt_第1页
计算机操作系统ch1.ppt_第2页
计算机操作系统ch1.ppt_第3页
计算机操作系统ch1.ppt_第4页
计算机操作系统ch1.ppt_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机操作系统,Operating System of Computer,教材与参考书,计算机操作系统.汤子瀛 ,哲凤屏. 西安电子科技大学出版社 操作系统教程原理和实例分析.孟静. 高等教育出版社 操作系统原理.庞丽萍. 华中理工大学出版社 现代操作系统.陈向群等译.机械工业出版社 Applied Operating System Concepts. Abrraham Silberschatz、Peter Galvin、Greg Gagne. 机械工业出版社 操作系统原理.何炎祥. 华中科技大学出版社,参考网站,操作系统原理教案: 清华开放学习资料库: 中大操作系统CAI: http:/i-

2、 浙江师范大学课件: 湖南农大操作系统 CAI: 操作系统 CAI: 2/lessons/computer/os/cai.htm 东华大学操作系统 CAI: 4/os/oscai/instruction.asp 操作系统疑难问题讨论: 北大操作系统课件: 各种操作系统的网址:,本课程内容,第一章 操作系统引论(4学时) 第二章 硬件环境(2学时) 第三章 进程概念(4学时) 第四章 进程同步(4学时) 第五章 调度与死锁(8学时) 第六章 存储管理(8学时) 第七章 设备管理(6学时) 第八章 文件系统(6学时) 第九章

3、 磁盘管理(6学时) 第十章 操作系统接口(2学时) 第十一章 UNIX系统内核结构(6学时),第一章 操作系统引论,主要内容: 操作系统的目标、作用; 操作系统的基本类型; 操作系统的特征及功能; 操作系统的发展; 操作系统的结构设计。 知识点及要求: 学习本章的目的是建立起 OS的基本概念。 要求了解OS的引入和发展,理解多道程序设计技术,掌握操作系统的功能和特征,了解分层式结构和微内核结构。,你知道下列哪些是操作系统吗?,极品飞车 CS DOS LINUX Windows XP Visual-C Word QQ MSN Google 魔兽争霸 FoxPro UNIX Turbo-ASM

4、JAVA ASP HTTP HTML 帝国时代 XML 一个C语言源程序,目前常见操作系统,微软:Windows系列(以前MS-DOS) UNIX:Solaris, AIX, HP UX, SVR4, BSD, ULTRIX 自由软件:Linux, freeBSD, Minix IBM: AIX, zOS(OS/390), OS/2, OS/4000, PC DOS 其他:Mac OS, NetWare,你用过的操作系统能做什么?,各种命令:dir copy del format 启动、结束用户程序 系统调用:例如INT指令 WINDOWS、UNIX 等提供多任务或多用户环境,1.1.1 操作

5、系统的定义和目标,操作系统是管理系统资源、控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户有效使用计算机提供良好运行环境的一种系统软件。 它可被看作是用户和计算机硬件之间的一种接口,是现代计算机系统不可分割的重要组成部分。,计算机系统的层次结构,应用层,系统程序层,操作系统层,硬件层,计算机系统的层次结构,计算机系统的组成,硬件层,提供基本的可计算性资源,包括:具有一组指令的处理器、可被访问的寄存器和存储器,可被使用的各种I/O设施和设备。 这些是操作系统赖以工作的基础,也是操作系统设计者可以使用的功能和资源。,操作系统层,对硬件作扩充和改造,提供了操作系统接口,为编译

6、程序、编辑程序、数据库系统等的设计者提供有力支撑。此外,操作系统还要做资源的调度和分配,信息的存取和保护,并发活动的协调和控制等许多工作。,系统程序层,建立在操作系统改造和扩充过的机器上,提供扩展指令集,实现各种语言处理程序、数据库管理系统和其他系统程序。 提供种类繁多的实用程序,如连接装配程序、库管理程序、诊断排错程序、分类/合并程序等供用户使用。,应用层,解决用户不同的应用问题,应用程序开发者借助程序设计语言来表达应用问题,开发各种应用程序,既快捷又方便。 操作系统和硬件组成了一个运行平台,其他软件都运行在这个平台上。,操作系统的主要目标,方便性:配置OS后,用户可以通过OS所提供的各种命

7、令,更容易地使用计算机系统。 有效性:可使CPU和I/O设备由于能保持忙碌状态而得到有效的利用;由于可使内存和外存中存放的数据有序而节省了存储空间。 可扩充性:OS应采用层次化结构,以便增加新的功能层次和模块,并能修改老的功能层次和模块。 开放性:为使来自不同厂家的计算机和设备能通过网络加以集成化,并能正确、有效地协同工作,实现应用的可移植性和互操作性,必须具有统一的开放环境,进而要求OS具有开放性。,1.1.2 操作系统的作用,OS作为用户与计算机硬件之间的接口 OS作为虚拟计算机 OS作为计算机系统的资源管理者,OS作为用户与计算机硬件之间的接口(1),操作系统能: 改造硬件设施,使之更易

8、使用; 提供系统调用,扩展机器功能; 组织工作流程 ,提供运行环境。 这些功能难于由硬件直接实现。,OS作为用户与计算机硬件之间的接口(2),操作系统改造和扩充过的计算机不但功能更强,使用也更为方便,用户可直接调用系统提供的各种功能,而无需了解软硬件本身的细节,对于用户来讲操作系统便成为他与计算机硬件之间的一个接口。,OS为用户提供虚拟计算机(1),如何把硬件复杂性与用户隔离开来? 基本方法是在计算机裸机上加上一层又一层软件来组成整个计算机系统。 每当在计算机上复盖一层软件,提供了一种抽象,系统的功能便增加一点,使用就更加方便一点,用户可用的运行环境就更加好一点。,OS为用户提供虚拟计算机(2

9、),1)裸机极难使用,虽有很强的指令系统,从功能上来说局限性很大。加上软件后,就可在硬件基础上,对其功能和性能进行扩充和完善。,OS为用户提供虚拟计算机(3),2)软件之间的关系,采用同样办法,一些软件的运行以另一些软件的存在并为其提供运行支撑作为基础,新添加的这些软件是在原来那些软件基础上的扩充和完善。,OS为用户提供虚拟计算机(4),3) 例1,在裸机上加上虚拟存储管理软件,用户就可有硕大的编程空间,不必涉及物理存储空间的容量、地址转换、程序重定位等物理细节。虚拟存储器是现代操作系统对计算机系统中多级物理存储体系进行高度抽象的结果。,OS为用户提供虚拟计算机(5),4) 例2 ,如果加上一

10、层I/O设备管理软件,用户就可使用I/O命令来进行数据的I/O,不必涉及显示器、打印机、扫描仪、键盘和鼠标等的物理细节。,OS为用户提供虚拟计算机(6),5) 如果加上一层文件管理软件,它将磁盘抽象成一组命名的文件,用户通过文件操作,按文件名来存取信息,不必涉及诸如数据物理地址、磁盘记录命令、移动磁头臂 、搜索物理块及设备驱动等物理细节,便于使用、效率又高。,OS为用户提供虚拟计算机(7),6) 例3,如果加上一层窗口管理软件,由该软件把一台物理屏幕改造成多窗口,每个应用可以在各自的窗口中操作,用户可以在窗口环境中方便地与计算机交互。,OS为用户提供虚拟计算机(8),操作系统是紧靠硬件的第一层

11、软件,计算机上覆盖操作系统后,可扩展基本功能,为用户提供一台功能显著增强,使用更加方便,安全可靠性好,效率明显提高的机器,称为虚拟计算机,或操作系统虚机器(Virtual Machine)。,OS作为计算机系统资源的管理者(1),在操作系统中,能分配给用户使用的硬件和软件设施总称为资源,包括两大类:硬件资源和信息资源。 硬件资源又分:处理器、存储器、I/O设备等; 信息资源又分:程序和数据等。,OS作为计算机系统资源的管理者(2),操作系统如何来管理系统资源,哪些情况下需要对资源进行管理?来看几个例子: 例1,用户想把一批信息存储到某个设备上,必须先弄清楚该设备的存储格式、读写命令和各种情况下

12、的中断处理步骤。而让用户了解设备的物理细节将会十分困难,甚至束手无策。这些工作只能让操作系统代劳。,OS作为计算机系统资源的管理者(3),例2,若内存中能装入两道程序并同时启动运行,不但可充分利用内存资源,当一道程序等待I/O完成时,可让另一道程序占有CPU运行,使得I/O设备和CPU同时保持忙碌,这类高效的工作方式,需要解决许多技术问题,这只有靠操作系统来做。,OS作为计算机系统资源的管理者(4),例3,三个需要打印输出信息的应用程序在同时运行,打印机上三个程序的输出结果会交错夹杂、混乱不堪。一种解决方案:程序输出时,先把各自的结果存在磁盘上 ,等到某程序生成的输出全部存入后,才启动打印机输

13、出,消除了杂乱无章的局面,这种做法只有操作系统才办得到。,OS作为计算机系统资源的管理者(5),也有人将操作系统定义为:是能使诸用户有效、方便地共享一套计算机系统资源的一种系统软件。,OS作为计算机系统资源的管理者(6),操作系统的重要任务之一(1) 对资源进行抽象研究,找出各种资源共性和个性,有序地管理计算机中的硬件、软件资源,跟踪资源使用情况,监视资源的状态,满足用户对资源的需求,协调各程序对资源的使用冲突;,OS作为计算机系统资源的管理者(7),操作系统的重要任务之一(2) 研究使用资源的统一方法,让用户简单、有效的使用资源,最大限度地实现各类资源的共享,提高资源利用率,从而,使得计算机

14、系统的效率有很大提高。,1.2 操作系统的主要特性,第一个特性-并发性 第二个特性-共享性 第三个特性-异步性 第四个特性-虚拟性,第一个特性-并发性(1),并发性(Concurrence)指两个或两个以上的事件或活动在同一时间间隔内发生 发挥并发性能够消除系统中部件和部件之间的相互等待,有效地改善系统资源的利用率,改进系统的吞吐率,提高系统效率,第一个特性-并发性(2),内存中同时有多个用户程序,或内存中同时有操作系统程序和用户程序被启动交替、穿插地执行,都是并发性的例子。,第一个特性-并发性(3),并发性使系统变得复杂化(1) 如何从一个活动切换到另一个活动? 怎样将各个活动隔离开来,使之

15、互不干扰,免遭对方破坏?怎样让多个活动协作完成任务?,第一个特性-并发性(4),并发性使系统变得复杂化(2) 怎样协调多个活动对资源的竞争?如何保证每个活动的资源不被其它进程侵犯? 多个活动共享文件数据时,如何保证数据的一致性?,第一个特性-并发性(5),操作系统中很早就引入重要概念-进程,进程能清晰刻划操作系统中的并发性,实现并发活动的执行,因而,它已成为现代操作系统的一个重要基础。,第一个特性-并发性(6),采用并发技术的系统称为多任务系统(Multitasking), 并发的实质是一个物理CPU(也可以多个物理CPU) 在若干道程序之间多路复用,并发性是对有限物理资源强制行使多用户共享以

16、提高效率。,第一个特性-并发性(7),结论:实现并发技术的关键之一是如何对系统内的多个活动(进程)进行切换的技术。,第一个特性-并发性(8),并行性(parallelism)指两个或两个以上事件或活动在同一时刻发生。 在多道程序环境下,并行性使多个程序同一时刻可在不同CPU上同时执行。 在分布式系统中,多台计算机并存使程序的并发性得到了更充分发挥,同一时刻每台计算机上都可以有程序在执行。,第一个特性-并发性(9),并行的事件或活动一定是并发的,但反之并发的事件或活动未必是并行的。 并行性是并发性的特例,而并发性是并行性的扩展。,第二个特性-共享性(1),共享指操作系统中的资源可被多个并发执行的

17、进程所使用 ,可分成两种资源共享方式: 互斥访问 :系统中的某些资源同一时间内只允许一个进程访问,许多物理设备,以及某些数据和表格都是互斥共享的资源。,第二个特性-共享性(2),同时访问 : 系统中还有许多资源,允许同一时间内多个进程对它进行访问,这里“同时”是宏观上的说法。典型的可供多进程同时访问的资源是磁盘,可重入程序也可被同时访问。 与共享性有关的问题是资源分配、信息保护、存取控制等,必须要妥善解决好这些问题。,第三个特性-异步性(1),操作系统中的异步性处处可见 : 一个进程在CPU上运行一段时间后,由于等待资源满足或事件发生,被暂停执行,CPU转让给另一个进程执行。系统中的进程何时执

18、行?何时暂停?怎样的速度向前推进?进程总共要多少时间执行才能完成?这些都是不可予知的,或者说该进程是以异步方式运行的。,第三个特性-异步性(2),操作系统中异步性的其他例子: (1)作业到达系统的类型和时间是随机的; (2)操作员发出命令或按按钮的时刻是随机的; (3)程序运行发生错误或异常的时刻是随机的; (4)各种各样硬件和软件中断事件发生的时刻是随机的 。,第三个特性-异步性(3),异步性给系统带来潜在危险,有可能导致与时间有关的错误。 操作系统的一个重要任务是必须确保捕捉任何一种随机事件,正确处理可能发生的随机事件,正确处理任何一种产生的事件序列,否则将会导致严重后果。,第四个特性-虚

19、拟性(1),虚拟性是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术,显然,前者是实际存在的而后者是虚构假想的。,第四个特性-虚拟性(2),通过多道程序和分时使用CPU技术,物理上的一个CPU变成逻辑上的多个CPU。,第四个特性-虚拟性(3),通过Spooling(伪脱机)技术可把物理上的一台独占I/O设备变成逻辑上的多台虚拟I/O设备。,第四个特性-虚拟性(4),通过窗口技术可把物理上的一个屏幕变成逻辑上的多个虚拟屏幕 IBM的VM技术把物理上的一台计算机变成逻辑上的多台计算机。,第四个特性-虚拟性(5),虚拟存储器则

20、是把物理上的多个存储器(主存和辅存)变成逻辑上的一个(虚存)的例子。,1.3 操作系统的主要功能,处理机管理 存储管理 设备管理 文件管理 网络与通信管理 用户接口,处理机管理(1),处理器管理的第一项工作是处理中断事件, 处理器管理的第二项工作是处理器调度。,处理机管理(2),处理器管理具体包括: 进程控制和管理 程同步和互斥 进程通信和死锁 线程控制和管理 处理器调度,分作业调度,中程调度,低级调度等,存储管理,存储管理具有四大功能: 存储分配 存储共享 地址转换与存储保护 存储扩充,设备管理,设备管理具有以下功能: 设备分配 缓冲管理 设备驱动 设备独立性 实现虚拟设备,文件管理,文件管

21、理要完成以下任务: 提供文件逻辑组织方法 提供文件物理组织方法 提供文件的存取方法 提供文件的使用方法 实现文件的目录管理 实现文件的存取控制 实现文件的存储空间管理,网络与通信管理,联网操作系统应具有以下管理功能: 网上资源管理功能 数据通信管理功能 网络管理功能 ,包括: 故障管理、安全管理、性能管理、记帐管理和配置管理。,1.4 操作系统的发展过程,无操作系统的计算机系统 单道批处理系统 多道批处理系统 分时系统 实时系统,1.4.1 无操作系统的计算机系统,1. 人工操作方式 从第一台计算机诞生(1945年)到50年代中期的计算机,属于第一代,这时还未出现OS。计算机操作是由用户采用人

22、工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机, 然后启动计算机运行。当程序运行完毕并取走计算结果后, 才让下一个用户上机。,2.人工操作方式的特点,特点: 用户独占全机 CPU等待人工操作 独占性 串行性 缺点: 计算机的有效机时严重浪费 效率低,3. 脱机输入/输出方式,在采用脱机输入输出方式时,程序和数据的输入输出都是在外围计算机的控制下完成的,即它们是脱离主机进行的,故称之为脱机输入输出操作。 脱机I/O方式的主要优点如下: (1)减少了CPU的空闲时间。 (2) 提高I/O速

23、度。,脱机I/O示意图,脱机输入技术,为解决低速输入设备与CPU速度不匹配的问题,可将用户程序和数据,在一台外围计算机的控制下,预先从低速输入设备输入到磁带上,当CPU需要这些程序和数据时,再直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU等待输入的时间。,脱机输出技术,当程序运行完毕或告一段落,CPU需要输出时,无须直接把计算结果送至低速输出设备,而是高速地把结果送到磁带上,然后再另一台外围机地控制下,把磁带上的计算结果由相应的输出设备输出,着就大大加快了程序的输出过程。,1.4.2 单道批处理系统,单道批处理系统的处理过程 批处理是指计算机系统对一批作业自动进行处理的

24、一种技术。 单道批处理在内存中仅有一道作业。,单道批处理系统的处理流程,2. 单道批处理系统的特征,单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。 该系统的主要特征如下: (1) 自动性 (2) 顺序性 (3) 单道性,1.4.3 多道批处理系统,1. 多道程序设计的基本概念 在计算机内存中同时存放若干道已开始运行尚未结束的程序,它们交替运行,共享系统中的各种硬、软件资源,从而使处理机得到充分利用。 在该系统中, 用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内

25、存,使它们共享CPU和系统中的各种资源。,单道和多道程序运行情况,2.多道批处理系统的特点,多道: 多道指某个作业占用CPU,若由于某种原因暂时不用CPU 则系统让第二个作业占用CPU 成批处理: 用户自己不能干预自己作业的运行,一旦发现作业错误不能及时改正,并延长开发软件时间,所以适用于成熟的程序。 无序性 调度性,3.多道批处理系统的优缺点,(1)资源利用率高 (2) 系统吞吐量大 (3)可提高内存和I/O设备利用率 (4)平均周转时间长 (5)无交互能力。 适合大型科学计算、数据处理。,4.多道批处理需要解决的问题,(1)处理机管理问题。 (2) 内存管理问题。 (3) I/O设备管理问

26、题。 (4) 文件管理问题。 (5) 作业管理问题。,1.4.4 分时系统,1. 分时系统(Time-Sharing System)的产生 分时系统是为了满足用户需求所形成的一种新型OS。它与多道批处理系统之间,有着截然不同的性能差别。用户的需求具体表现在以下几个方面: (1) 人机交互 (2) 共享主机 (3) 便于用户上机,分时系统示意图,2.分时系统的思想,采用时间片轮的方法,同时为许多终端用户服务,对每个用户能保证足够快的响应时间,并提供交互会话的功能。 时间片:将CPU的时间划分成若干个片段,称为时间片,操作系统以时间片为单位,轮流为每个终端用户服务 设计目标:对用户的请求及时响应,

27、并在可能条件下尽量提高系统资源的利用率。 适合办公自动化、教学及事务处理等要求人机会话的场合。,3.分时操作系统工作方式,一台主机连接了若干个终端 每个终端有一个用户在使用 交互式的向系统提出命令请求 系统接受每个用户的命令 采用时间片轮转方式处理服务请求 并通过交互方式在终端上向用户显示结果 用户根据上步结果发出下道命令,4.分时系统实现中的关键问题,为实现分时系统,其中,最关键的问题是如何使用户能与自己的作业进行交互,即当用户在自己的终端上键入命令时, 系统应能及时接收并及时处理该命令,再将结果返回给用户。 (1) 及时接收。 (2) 及时处理。 因此,首先作业应直接进入内存;其次,不允许

28、一个作业长期占用处理机。,5.分时操作系统特点,多路性:同时有多个用户使用一台计算机。宏观上,是多个人同时使用一个CPU;微观上,多个人在不同时刻轮流使用CPU。 交互性:用户根据系统响应结果进一步提出新请求(用户直接干预每一步)。 独立性:用户感觉不到计算机为其他人服务 (OS提供虚机器,各用户虚机器互不干扰)。 及时性:系统对用户提出的请求及时响应。,6.影响响应时间的因素,终端数目多少 调度算法(时间片的选取) 信息交换量和信息交换速度 机器处理能力 请求服务的时间长短及服务请求的分布,1.4.5 实时系统,“实时”,是表示“及时”,而实时系统(Real-Time System)是指系统

29、能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。 特点:及时性要求高,系统可靠性高。,1.实时操作系统的分类,实时控制系统:通常是指以计算机为中心的生产过程控制系统,又称计算机控制系统。 如:钢铁冶炼和钢板轧制的自动控制、炼油、化工生产过程的自动控制,军事控制等。 实时信息处理系统:计算机及时接收从远程终端发来的服务请求,根据用户提出的问题对信息进行检索和处理,并在很短时间内对用户做出正确回答。例如:银行,机票订购系统、股市行情实时信息处理系统等。,2. 实时操作系统主要追求目标,对外部请求在严格时间范围内作出反应 高可靠性 安全性 实时系统必须和先进的技术装备相结合,3.实时系统与分时系统特征的比较,(1)多路性 (2)独立性 (3)及时性 (4)交互性 (5)可靠性,1.5 操作系统的结构设计,1.5.1 软件工程的基本概念 1. 软件的含义 软件是指当计算机运行时,能提供所要求的功能和性能的指令和程序的集合,该程序能够正确地处理信息的数据结构;作为规范软件,还应具有描述程序功能需求以及程序如何操作使用的文档。 2. 软件工程的含义 软件工程是指运用系统的、规范的和可定量的方法,来开发、运行和维护软件。其目的是为了解决在软件开发中所出现的编程随意、软件质量不可保证以及维护困难等问题。,1.5.2 传统

温馨提示

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

评论

0/150

提交评论