计算机操作系统教程PPT.ppt
《计算机操作系统教程PPT.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统教程PPT.ppt(92页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机操作系统第一章操作系统概述用户观点下的操作系统第第1 1章章 操作系统概述操作系统概述1.1 1.1 操作系统的概念操作系统的概念1.1.1 1.1.1 什么是操作系统什么是操作系统1 1用户观点用户观点从用户的观点看,操作系统应该提供一个人与计算机打交从用户的观点看,操作系统应该提供一个人与计算机打交道的接口,也就是人机接口。用户可以通过操作系统提供道的接口,也就是人机接口。用户可以通过操作系统提供的这个接口使用和控制计算机,从而达到计算机为用户服的这个接口使用和控制计算机,从而达到计算机为用户服务的目的。务的目的。接口的方式有:接口的方式有:图形界面的接口(图形界面的接口(Graph
2、ical User Interface,GUI);命令行();命令行(Command Line,CL)接)接口;软件编程的接口口;软件编程的接口 系统观点下的操作系统2系统观点系统观点操作系统就是资源的分配者。操作系统就是资源的分配者。操作系统要对操作系统要对I/O设备和用户程序加以控制,保证设备的设备和用户程序加以控制,保证设备的正常运行,防止非法操作,及时诊断设备的故障等。从这正常运行,防止非法操作,及时诊断设备的故障等。从这个意义上讲,操作系统又是工作流程的调度者。个意义上讲,操作系统又是工作流程的调度者。操作系统计算机硬件组成1.1.2 计算机系统概述计算机系统概述CPU实现CPU两种
3、模式除了用在嵌入式系统中的非常简单的CPU之外,多数CPU都有两种模式,即核心态(管态)核心态(管态)和用户态(目态)用户态(目态),在PSW中有一个二进制控制位控制这两种模式。当CPU执行操作系统的代码时,CPU处于核心态,CPU可以执行指令集中的每一条指令,并且使用硬件的每一种功能,访问整个硬件。相反,当CPU执行用户程序的代码时,CPU处于用户态,仅允许执行整个指令集的一个子集和访问所有功能的一个子集。一般而言,在用户态中有关I/0和内存保护的所有指令是禁止的。当然,将PSW中的模式位设置成核心态也是禁止的。存贮器层次结构磁盘驱动器基址和界限寄存器存贮器相关概念由程序所生成的地址被称为虚
4、拟地址虚拟地址(Virtual Address),而由存储器使用的地址称为物理地址物理地址(Physical Address)。完成检查和映射工作的装置被称为内存管理单元内存管理单元(Memory Management Unit,MMU)。它位于CPU芯片上或者CPU附近,在逻辑上MMU位于CPU和存储器之间。中断总线操作系统的主要功能1.1.3 操作系统主要功能进程管理1.进程管理进程管理一个任务从输入、处理、再到输出的完整过程称为作业作业(Job);进程是分配资源和在处理机上运行的基本单位。因而,进程管理的功能包括:作业和进程调度、进程控制、进程通信、进程同步。(1)作业和进程调度一个作业
5、通常经过两级调度才得以在CPU上执行。首先是作业调度,它把选中的一批作业放入内存,并分配其他必要的资源,为这些作业建立相应的进程。然后进程调度按一定的算法从就绪进程中选出一个合适的进程,使之在CPU上运行。进程管理(2)进程控制进程是系统中活动的实体。进程控制包括进程的创建、进程的撤销、进程的阻塞、进程的唤醒等。(3)进程通信相互合作的进程之间往往需要交换信息,为此,操作系统要提供通信的机制。(4)进程同步内存管理2.内存管理(1)内存分配内存分配的主要任务是为每道程序分配一定的内存空间。为此,操作系统必须记录整个内存的使用情况,处理用户提出的申请,按照某种策略实施分配,接收系统或用户释放的内
6、存空间。(2)地址映射在多道程序环境下,用户程序中所涉及的相对地址与装入内存后实际占用的物理地址就不一样。CPU执行用户程序的时候,要从内存中取出指令或数据,为此就必须把所有的相对地址(或称为逻辑地址)转换成内存的实际物理地址。这就是操作系统的地址映射功能(需要有硬件的支持)。内存管理(3)内存保护不同用户的程序都放在同一内存中,就必须保证它们在各自的内存空间中活动,不能相互干扰,更不能侵占操作系统的空间。另外,还要允许不同用户程序共享一些系统的或用户的程序。(4)内存扩充把一个程序当前正在使用的部分(不是全体)放在内存,而其余部分放在磁盘上。在这种“程序部分装入内存”的情况下,就启动并执行它
7、。以后根据程序执行时的要求和内存当时的使用情况,随机地将所需部分调入内存;必要时还要把已经分配出去的内存回收给系统,供其他程序使用(即内存置换)。设备管理3.设备管理设备管理的主要功能包括:缓冲区管理、设备分配、设备驱动和设备无关性。(1)缓冲区管理缓冲区管理的目的是解决CPU和外设速度不匹配的矛盾,使它们充分并行工作,提高各自的利用率。(2)设备分配根据用户的I/0请求和相应的分配策略,为该用户分配外部设备、通道和控制器等。设备管理(3)设备驱动实现CPU与通道及外设之间的通信。由CPU向通道发出I/0指令,后者驱动相应设备进行I/0操作。当I/0任务完成后,通道向CPU发出中断信号,由相应
8、的中断处理程序进行处理。(4)设备无关性设备无关性又称为设备独立性,即用户编写的程序与实际使用的物理设备无关,由操作系统把用户程序中使用的逻辑设备映射到物理设备上。文件管理4.文件管理文件管理功能包括:文件存储空间的管理、文件操作的一般管理、目录管理、文件的读写管理和存取控制。(1)文件存储空间的管理系统文件和用户文件都要存放在磁盘上。为此,需要由文件系统对所有文件以及文件的存储空间进行统一管理:为新文件分配必要的外存空间,回收释放的文件空间,提高外存的利用率。文件管理(2)文件操作的一般管理包括文件的创建、删除、打开、关闭等。(3)目录管理目录管理包括目录文件的组织、实现用户对文件的“按名存
9、取”,以及目录的快速查询和文件的共享等。(4)文件的读写管理和存取控制根据用户的请求,从外存中读取数据或将数据写入外存中。为了保证文件信息的安全性,防止未授权用户的存取或破坏,对各种文件(包括目录文件)进行存取控制。用户接口5.用户接口(1)命令行接口在提示符之后用户从键盘上输入命令,命令解释程序接收并解释这些命令,然后把它们传递给操作系统内部的程序,执行相应的功能。这是操作系统与用户的交互界面。(2)程序接口也称为系统调用接口。系统调用是操作系统内核与用户程序、应用程序连接的接口。在Unix系统上,系统调用以C函数的形式出现,在Windows系统中,系统调用以API函数的形式出现。所以内核之
10、外的程序都必须经由系统调用才能获得操作系统的服务。用户接口内核之外的程序都必须经由系统调用才能获得操作系统的服务。系统调用只能在程序中使用,不能直接作为命令在终端上输入和执行。由于系统调用能够改变CPU的执行状态,从用户态变为核心态,直接进入内核执行,所以其执行效率高,并且功能强大。用户在自己的程序中使用系统调用,从而获取系统提供的众多基层服务。(3)图形接口也称为GUI接口。用户利用鼠标、窗口、菜单、图标等图形用户界面工具,可以直观、方便、有效地使用系统服务和各种应用程序及实用工具。操作系统的地位1.1.4 操作系统的地位操作系统的地位由此可见,操作系统是裸机之上的第一层软件,它只在核心态模
11、式下运行,受硬件保护,与硬件关系密切。它不仅对硬件资源直接实施控制、管理,而且它的很多功能的完成是与硬件动作配合起来实现的,如中断系统。操作系统的运行要有良好的硬件环境,这种硬件配置环境往往称做计算机的硬件平台。操作系统的地位操作系统是整个计算机系统的控制管理中心,其他所有软件都建立在操作系统之上,操作系统对它们既有支配权力,又为其运行建造必备的环境。因此,在裸机之上每加一层软件后,用户看到的就是一台功能更强的机器,通常把经过软件扩充功能后的机器称为“虚拟机”。在裸机安装操作系统之后,就为其他软件和用户提供了工作环境,往往把这种工作环境称为软件平台。并发性1.1.5 操作系统的主要特性1并发性
12、(Concurrence)并发性是指两个或两个以上的事件或活动在同一时间间隔内发生。操作系统是一个并发系统,并发性是它的重要特征,操作系统的并发性指它应该具有处理和调度多个程序同时执行的能力。多个I/O 设备同时在输入输出;设备I/O 和CPU计算同时进行;内存中同时有多个系统和用户程序被启动并交替、穿插地执行,这些都是并发性的例子。多任务系统与并行性采用了并发技术的系统又称为多任务系统(多任务系统(Multitasking System)。在计算机系统中,并发实际上是一个物理CPU 在若干道程序之间多路复用,这样就可以实现运行程序之间的并发,以及CPU 与I/O 设备、I/O 设备与I/O
13、设备之间的并行,并发性的实质就是对有限物理资源进行强制性多用户共享,以提高效率。在多处理器系统中,程序的并发性不仅体现在宏观上,而且体现在微观上(即在多个CPU 上)也是并发的,又称并行的。并行性并行性(Parallelism)是指两个或两个以上事件或活动在同一时刻发生。在多道程序环境下,并行性使多个程序同一时刻可在不同CPU 上同时执行。共享性2共享性共享性(Sharing)共享性是操作系统的另一个重要特性。共享指操作系统中的资源(包括硬件资源和软件资源)可被多个并发执行的进程共同使用,而不是被一个进程所独占。资源共享的方式可以分成两种:第一种是互斥访问第一种是互斥访问。系统中的某些资源如打
14、印机、磁带机、卡片机,虽然它们可提供给多个进程使用,但在同一时间内却只允许一个进程访问这些资源,即要求互相排斥地使用这些资源。当一个进程正在使用该资源时,其他欲访问该资源的进程必须等待,仅当该进程访问完毕并释放资源后,才允许另一进程对该资源访问。这种同一时间内只允许一个进程访问的资源称临界资源临界资源,许多物理设备,以及某些数据和表格都是临界资源,它们只能互斥地被共享。共享性第二种是同时访问第二种是同时访问。系统中还有许多资源,允许同一时间内多个进程对它们进行访问,这里“同时”是宏观上的说法。典型的可供多进程同时访问的资源是磁盘,可重入程序也可被同时访问。与共享性有关的问题是资源分配、信息保护
15、、存取控制等,必须要妥善解决好这些问题。共享性和并发性是操作系统两个最基本的特性,它们互为依存。一方面,资源的共享是因为程序的并发执行而引起的,若系统不允许程序并发执行,自然也就不存在资源共享问题。另一方面,若系统不能对资源共享实施有效管理,必然会影响到程序的并发执行,甚至程序无法并发执行,操作系统也就失去了并发性,导致整个系统效率低下。异步性3异步性异步性(Asynchronism)操作系统的第三个特性是异步性异步性,或称随机性随机性。在多道程序环境中,允许多个进程并发执行,由于资源有限而进程众多,多数情况,进程的执行不是一贯到底,而是“走走停停”。例如,一个进程在CPU 上运行一段时间后,
16、由于等待资源满足或事件发生,它被暂停执行,CPU 转让给另一个进程执行。系统中的进程何时执行?何时暂停?以什么样的速度向前推进?进程总共要花多少时间执行才能完成?这些都是不可预知的,或者说该进程是以异步方式运行的,其导致的直接后果是程序执行结果可能不唯一。虚拟性4虚拟性虚拟性(Virtual)虚拟性是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术。显然,前者是实际存在的而后者是虚构假想的,采用虚拟技术的目的是为用户提供易于使用、方便高效的操作环境。例如,在多道程序系统中,物理CPU 可以只有一个,每次也仅能执行一道程序
17、,但通过多道程序和分时使用CPU 技术,宏观上有多个程序在执行,就好像有多个CPU 在为各道程序工作一样,物理上的一个CPU 变成了逻辑上的多个CPU。无OS1.2 操作系统的发展历史1.2.1手工操作阶段(无OS)无OS早期的计算机存在几个问题:(1)编程人员必须熟悉计算机的结构及所有外设。(2)计算机的利用率低。(3)程序员必须提前预约使用计算机。(4)程序员独占使用计算机的全部资源。计算机的CPU和其他设备都在等待用户,而用户的处理时间大部分花费在程序的输入上,所以计算机的利用率非常低。(5)程序员必须牢记计算机使用的机器码。因为当时没有编程语言,程序员就必须牢记CPU所能认识的所有机器
18、指令代码(这些机器码可都是二进制的啊)。穿孔卡片作业作业作业:用户在一次算题过程中要求计算机所做工作的集合。即从用户输入一直到计算机输出的一次完整的工作过程。作业步作业步:编辑、编译、连接装配、运行。作业的组成作业的组成:程序、数据、作业说明书。单道批处理1.2.2 单道批处理系统(单道批处理系统(Simple Batch System)单道批处理系统是在20世纪50年代后期60年代中期,伴随着第二代计算机(晶体管计算机)的出现而产生的。它是对上一节技术及工作流程的改进,具体改进如下:(1)设置专门的计算机操作及维护人员。(2)采用脱机方式进行输入/输出。(3)将磁带技术应用到计算机中。(4)
19、设置作业说明书,在作业说明书上记录该程序是属于哪个程序员的、需要的编译环境是什么、需要的外设是什么。(5)编制一个监控程序,并让之常驻内存。(6)计算机内存中只能保留运行用户的一个程序。脱机批处理作业多道批处理1.2.3 多道批处理系统(多道批处理系统(Multiprogrammed Batch System)多道程序设计(多道程序设计(MultiProgramming)是指允许多个程序)是指允许多个程序同时进入一个计算机系统的内存并交替运行的方法同时进入一个计算机系统的内存并交替运行的方法。也就是说,计算机内存中同时存放了多道(二个以上相互独立的)程序,它们均处于开始和结束点之间。从宏观上看
20、是并行的,多道程序都处于运行过程中,但都未运行结束;从微观上看是串行的,各道程序轮流占用CPU,交替地执行。引入多道程序设计技术的根本目的是提高CPU 的利用率,充分发挥计算机系统部件的并行性,现代计算机系统都采用了多道程序设计技术。单道批处理运行效率二道批处理运行效率多道批处理下面小结一下操作系统中引入多道程序设计的好处:一是提高了CPU 的利用率;二是提高了内存和I/O 设备的利用率;三是改进了系统的吞吐率;四是充分发挥了系统的并行性。要想实现多道程序设计,就必须妥善地解决以下三个问题:存储保护与程序浮动;CPU的管理和分配;系统资源的管理和调度。分时系统1.2.4 分时系统(分时系统(T
21、ime-Sharing System)批处理系统使用多道程序技术后,极大地提高了计算机的利用率。但仍然存在以下两个问题:(1)用户不能直接控制作业的运行。(2)作业的周转时间太长。在批处理系统中,用户提交作业后通常需要经过几个小时甚至几天才能得到所需要的结果,这样的系统对于仅仅需要几分钟的短作业就十分不利。分时系统分时的思想于1959 年由MIT 正式提出,并在1962 年开发出了第一个分时系统CTSS(Compatible Time Sharing System),成功地运行在IBM 7094 机上,能支持32个交互式用户同时工作。其实现思想如下:每个用户在各自的终端上以问答方式控制程序运行
22、,系统把中央处理器的时间划分成时间片,轮流分配给各个联机终端用户,每个用户只能在极短时间内执行,若时间片用完,而程序还未做完,则挂起并等待下次分得时间片。由于调试程序的用户常常只发出简短的命令,这样以来,每个用户的每次要求都能得到快速响应,每个用户获得这样的印象,好像他独占了这台计算机一样。实质上,分时系统是多道程序的一个变种,CPU 被若干个交互式用户多路分用,不同之处在于每个用户都有一台联机终端。分时系统的特征分时操作系统具有以下特性:同时性:若干个终端用户同时联机使用计算机,分时就是指多个用户分享使用同一台计算机的CPU 时间。独立性:终端用户彼此独立,互不干扰,每个终端用户感觉上好像他
23、独占了这台计算机。及时性:终端用户的立即型请求(即不要求大量CPU 时间处理的请求)能在足够快的时间之内得到响应(通常应该为2-3 秒钟)。这一特性与计算机CPU的处理速度、分时系统中联机终端用户数目和时间片的长短密切相关。交互性:人机交互,联机工作,用户直接控制其程序的运行,便于程序的调试和排错。分时与批处理的不同分时操作系统和批处理操作系统不同点:追求的目标不同:批处理系统以提高系统资源利用率和作业吞吐率为目标;分时系统则要满足多个联机用户立即型命令的快速响应。适应的作业不同:批处理适应已经调试好的大型作业;而分时系统适应正在调试的小作业。资源的利用率不同:批处理操作系统可合理安排不同负载
24、的作业,使各种资源利用率较佳;分时操作系统中,多个终端作业使用相同类型编译系统、运行系统和公共子程序时,系统调用它们的开销较小。作业控制的方式不同:批处理由用户通过JCL(Job Control Language)的语句书写作业控制流,预先提交,脱机工作;交互型作业,由用户从键盘输入操作命令控制,交互方式、联机工作。实时系统1.2.5 实时系统(Real-Time System)实时操作系统(Real Time Operating System)是指当外界事件或数据产生时,能够接收并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任
25、务协调一致运行的操作系统。因而,提供及时响应和高可靠性是其主要特点 过程控制系统由实时操作系统控制的过程控制系统,较为复杂,通常由四部分组成:(1)数据采集。它用来收集、接收和录入系统工作必须的信息或进行信号检测。(2)加工处理。它对进入系统的信息进行加工处理,获得控制系统工作必须的参数或作出决定,然后进行输出,记录或显示。(3)操作控制。它根据加工处理的结果采取适当措施或动作,达到控制或适应环境的目的。(4)反馈处理。它监督执行机构的执行结果,并将该结果反馈至信号检测或数据接收部件,以便系统根据反馈信息采取进一步措施,达到控制的预期目的。分时系统与实时系统的区别分时操作系统和实时操作系统的主
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 操作系统 教程 PPT
限制150内