470 likes | 644 Views
操作系统. Operating System. 科学出版社. 刘 腾 红 主编. 主要内容. 引论 作业管理和用户接口 进程和处理机管理 存储管理 设备管理 文件系统 网络操作系统 UNIX 系统分析 Windows NT 介绍. 第一章 引 论. 1.1 操作系统在计算机系统中的地位 1.2 操作系统的基本类型 1.3 操作系统的功能 1.4 操作系统特性及性能指标 1.5 中断系统. 1.1 操作系统在计算机系统中的地位. 1.1.1 计算机系统
E N D
操作系统 Operating System 科学出版社 刘 腾 红 主编
主要内容 • 引论 • 作业管理和用户接口 • 进程和处理机管理 • 存储管理 • 设备管理 • 文件系统 • 网络操作系统 • UNIX系统分析 • Windows NT介绍
第一章 引 论 1.1 操作系统在计算机系统中的地位 1.2 操作系统的基本类型 1.3 操作系统的功能 1.4 操作系统特性及性能指标 1.5中断系统
1.1 操作系统在计算机系统中的地位 1.1.1 计算机系统 1.1.2 操作系统在计算机系统中的地位 1.1.3 操作系统的定义
1.1.1 计算机系统 • 完整的计算机系统: • 硬件系统和软件系统两部分 • 硬件系统: • 组成计算机的各种元件、部件和设备的总称; • 软件系统: • 机器运行所需的各种程序及其有关的文档资料
1.1.1 计算机系统 • 完整的计算机系统: • 硬件系统 组成计算机的各种元件、部件和设备的总称; • 软件系统 机器运行所需的各种程序及其有关的文档资料 • 软硬件系统的关系 • 只有硬件系统,而没有配套的软件系统的计算机是裸机 ,计算机系统就无法工作。 • 计算机的软件系统是建立在硬件系统基础之上的,只有将硬件系统和软件系统有机地结合起来,才能充分发挥计算机的作用。
用户 应用层 系统层 操作系统层 机器层 1.1.1 计算机系统 • 功能上,整个计算机系统划分为四个层次: 机器层、操作系统层、系统层和应用层 图1-1 计算机系统的四个层次
1.1.1 计算机系统-机器层 • 机器层是指裸机 • 它对外界面由机器指令系统组成,机器指令系统与硬件的组织结构密切相关。 • 操作系统及其外层软件通过执行各种机器指令访问和控制各种硬件资源。 • 计算机硬件采用冯·诺依曼的 “存贮程序控制”原理 • 由五类部件组成:控制器、运算器、存贮器、输入设备和输出设备 • 传统的计算机硬件系统是以CPU为中心 • 缺点:浪费大量的CPU时间 • 现代系统的硬件都是以主存为中心 • 优点:使CPU与I/O设备充分并行地工作,提高各种硬件资源的利用率。
1.1.1 计算机系统-操作系统层 • 操作系统 • 基本的系统软件,它密切地依赖于计算机硬件,直接管理计算机系统中的各种硬件资源和软件资源; • 其主要部分驻留在主存中,称为操作系统的核心或内核 • 操作系统的对内界面: • 管理和控制各种硬件资源(包括CPU、内存和外设) • 对外界面是: • 为用户提供方便服务的一组软件程序集合。
1.1.1 计算机系统-系统层 系统层是指除操作系统以外的所有系统软件。主要有: • 汇编程序 • 将用某种汇编语言编写的源程序翻译成机器能够直接识别和执行的机器语言目标程序的程序。 • 编译程序 • 将某种计算机高级程序设计语言编写的源程序翻译成机器能够直接识别和执行的目标程序的程序。 • 编辑程序 • 用户编制源程序或某种文本文件的方便工具。 • 调试程序 • 系统维护程序 • 指计算机系统在运行过程中需要不断地维护的有关程序。 • 数据库管理系统 • 对数据库进行管理和控制的一组软件。 • 数据通讯程序 • 为管理和控制计算机间进行通讯而设计的程序。
1.1.1 计算机系统-应用层 • 应用层是指一些直接为用户服务和使用的应用程序、用户程序和服务程序等,它可由用户或专门的软件公司编制。 • 它是为了解决某些具体的、实际的问题而开发和研制的各种程序。
1.1.2 操作系统在计算机系统中的地位 • 操作系统在计算机系统的地位是十分重要的 • 操作系统是最基本的、核心的系统软件 • 操作系统有效地统管计算机的所有资源(包括硬件资源和软件资源),合理地组织计算机的整个工作流程,以提高资源的利用率,并为用户提供强有力的使用功能和灵活方便的使用环境。 • 操作系统是计算机系统中不可缺少的关键部分 • 计算机系统绝不能缺少操作系统。计算机系统越复杂,操作系统就愈显得重要。
1.1.3 操作系统的定义 • 从功能角度,即从操作系统所具有的功能来看 • 操作系统是一个计算机资源管理系统,负责对计算机的全部硬、软件资源进行分配、控制、调度和回收。 • 从用户角度,即从用户使用来看 • 操作系统是一台比裸机功能更强、服务质量更高,用户使用更方便、更灵活的虚拟机,即操作系统是用户和计算机之间的界面(或接口)。 • 从管理者角度,即从机器管理者控制来看 • 操作系统是计算机工作流程的自动而高效的组织者,计算机硬软资源合理而协调的管理者。利用操作系统,可减少管理者的干预,从而提高计算机的利用率。
1.1.3 操作系统的定义 • 从软件角度,即从软件范围静态地看 • 操作系统是一种系统软件,是由控制和管理系统运转的程序和数据结构等内容构成。 综上所述,我们给出操作系统的定义为: 操作系统是管理和控制计算机硬软资源,合理地组织计算机的工作流程,方便用户使用计算机系统的软件。
1.2 操作系统的功能 1.2.1 处理机管理 1.2.2 存贮管理 1.2.3 设备管理 1.2.4 文件管理 1.2.5 作业管理
1.2.1 处理机管理 • 处理机管理的主要任务: • 组织和协调用户对处理机的争夺使用,管理和控制用户任务,以最大限度提高处理机的利用率。 • 处理机管理就是提出调度策略和给出调度算法,使每个用户都能满意,同时又能充分地利用CPU。
1.2.2 存储管理 存贮管理是用户与内存的接口。 • 主要任务是对内存管理,即内存空间的分配和回收,也包括内存与外存交换信息的管理,配合硬件做地址转换和存贮保护的工作,进行存贮空间的扩充等。 • 当多个用户程序共用一个计算机系统时,它们往往要共用计算机的内存储器,如何把各个用户的程序和数据隔离而互不干扰,又能共享一些程序和数据,这就需要进行存贮空间分配和存贮保护。
1.2.3 设备管理 设备管理是用户与外设的接口。 • 主要任务是管理各类外部设备 • 包括分配、启动和故障处理等,合理地控制I/O的操作过程,实现虚拟设备,最大程度地实现CPU与设备,设备与设备之间的并行工作。 • 操作系统的设备管理是为用户方便使用各种设备提供接口,用户只需通过一定的命令来使用某个设备,并在多道程序环境下提高设备的利用率。
1.2.4 文件管理 • 文件管理也称信息管理 • 主要任务是负责文件的存取和管理,以方便用户使用,并提供保证文件安全性的措施。 • 文件管理是用户与外存的接口 • 对于任何文件,都要方便用户使用,便于存取,而且还要保证文件的安全,还要有利于提高系统的效率和资源的利用率等。
1.2.5 作业管理 • 作业管理是用户与操作系统的接口。 • 它负责对作业的执行情况进行系统管理,包括作业的组织,作业的输入输出,作业调度和作业控制等。 • 在操作系统中,把用户在一次算题过程中要求计算机系统所做的一系列工作的集合称为作业。 • 作业管理中提供一个作业控制语言供用户书写作业说明书,同时还为操作员和终端用户提供与系统对话的命令语言,并根据不同系统要求,制定各种相应的作业调度策略,使用户能够方便地运行自己的作业,以便提高整个系统的运行效率。
1.3 操作系统的类型 1.3.1 多道批处理系统 1.3.2 分时系统 1.3.3 实时系统
1.3.1 多道批处理系统 多道批处理系统是多道程序系统与批处理系统的结合。 • 批处理系统 • 成批处理一些程序的系统 • 批处理分为联机批处理和脱机批处理两种 • 联机批处理 • 在联机批处理中,编制了一个常驻内存的监督程序,用来控制用户作业的运行。 • 其处理过程为: 用户将所需解决的问题组成作业,交给操作员,操作员有选择地把若干作业合成一批,并把一批作业装到输入设备上,然后由监督程序控制送到外存,再从外存中将一个一个作业调入内存运行,直到全部作业处理完毕。
1.3.1 多道批处理系统 • 脱机批处理 • 脱机批处理系统由主机和卫星机组成 • 卫星机不与主机直接连接,只与外部设备打交道。 • 作业通过卫星机输入到磁带上,当主机需要输入作业时,就把输入带从卫星机的磁带机上取下,并装入到主机的磁带机上。 • 由于这种脱机的批处理方式摆脱了不同用户作业之间的大量手工操作,并使主机与慢速的I/O设备并行工作,从而提高了主机的效率。
输入带 输入带 读卡机 卫星机 主机 打印机 输出带 输出带 1.3.1 多道批处理系统 图1-2 脱机批处理
1.3.1 多道批处理系统 在批处理系统中,作业运行总是要占用一段时间的CPU,然后作一段时间的I/O,再占用CPU,再I/O等,这样交替地进行。这种按序单道处理作业(即串行)的方法,系统效率得不到充分提高。 一般会出现以下两种情况: • 以计算为主的作业(I/O量少)会使外围设备出现空闲; • 以I/O为主的作业(计算量少)又会造成CPU的空载。 多道程序系统的引入就解决了以上的问题
1.3.1 多道批处理系统 多道程序系统的主要特征: • 多道 • 即计算机内存中同时存放几道相互独立的程序; • 宏观上并行 • 同时进入系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕; • 微观上串行 • 内存中的多道程序轮流地或分时地占有CPU,交替执行。
1.3.1 多道批处理系统 多道批处理系统有两个含义 • 多道 • 指在计算机内存中同时存放多个作业,它们在操作系统的控制下并发执行,而且在外存中还存放有大量的作业,并组成一个后备作业队列,系统按一定的调度原则每次从后备作业队列中选取一个或多个作业调入内存运行,作业运行结束并退出,整个过程均由系统自动实现,从而在系统中形成了一个自动转接的连续的作业流。 • 批处理 • 指系统向用户提供一种脱机操作方式,即用户与作业之间没有交互作用,作业一旦进入系统,用户就不能直接干预或控制作业的运行。
1.3.1 多道批处理系统 • 在多道批处理系统中,机器的利用率很高 • 因为作业的输入,作业调度等完全由系统控制,并允许几道程序同时投入运行,只要合理搭配作业,譬如把计算大的作业和输入输出量的作业合理搭配,就可以充分利用系统的资源。 • 多道批处理系统不提供交互作用的工作方式 • 这给用户带来了很大的不便,人们希望系统提供一种联机操作方式。这不仅能够缩短程序的开发周期,而且能够充分发挥程序设计人员的主观能动性。 这就促使了分时系统的出现及发展。
1.3.2 分时系统 分时系统的主要特点表现在: • 协调性 • 就整个系统而言,要协调多个终端用户同时与计算机交互,并完成他们所请求的工作。 • 独占性 • 对用户而言,各个终端用户彼此之间都感觉不到别人也在使用这台计算机,好像只有自己独占计算机一样。 • 交互性 • 对系统和用户而言,人与计算机是以对话方式工作的。 • 共享性 • 对资源而言,宏观上各终端用户共享计算机的各种资源(尤其是CPU),从微观上看用户在分时(按时间片)使用许多资源。
1.3.2 分时系统 分时系统具有如下优点: • 自然操作方式 • 该系统使用户能在较短的时间内采用交互会话工作方式,及时输入、调度、修改和运行自己程序,因而加快了解题周期。 • 扩大了应用范围 • 无论是本地用户,还是远地用户,只要与计算机连上一台终端设备,就可以随时随地使用计算机。 • 便于共享和交换信息 • 远近终端用户均可通过系统中的文件系统彼此交流信息和共享各种文件。 • 经济实惠 • 用户只须有系统配备的终端,即可完成各种处理任务,可共享大型的具有丰富资源的计算机系统。
1.3.3 实时系统 实时系统主要具有如下特点: • 对外部进入系统的信号或信息应能做到实时响应。 • 实时系统较一般的通用系统有规律,许多操作具有一定的可预计性。 • 实时系统的终端一般作为执行和询问使用,不具有分时系统那样有较强的会话能力。 • 实时系统对可靠性和安全性要求较高,常采用双工工作方式。
1.3.3 实时系统 实时系统与分时系统的主要差别表现在: • 交互能力 • 分时系统:交互能力较强 • 实时系统:大都是具有特殊用途的专用系统,其交互能力受到一定的限制。 • 响应时间 • 分时系统:一般都是以人能接受的时间来确定的,其响应时间一般在秒数量级; • 实时系统:要求视应用场合而定,主要以控制对象或信息处理过程所能接受的延迟而定,可能是秒级,也可能是毫秒级甚至微秒级。
1.3.3 实时系统 • 多道批处理系统、分时系统和实时系统是操作系统的三种基本类型。 • 但一个实际系统往往兼有它们三者或其中两者的功能,这就出现了通用操作系统,使之具有更强的处理能力和广泛的适用性。 • 批处理系统与分时系统相结合,当系统有分时用户时,系统及时地对他们的要求给出响应,而当系统暂时没有分时用户或分时用户较少时,系统处理不太紧急的批处理作业,以便提高系统资源的利用率。 • 批处理系统与实时系统相结合,有实时请求则及时进行处理,无实时请求时则进行批处理。
1.4 操作系统的特性及性能指标 1.4.1 操作系统的特性 1.4.2 操作系统的性能指标
1.4.1 操作系统的特性 由于多道程序系统的出现,使CPU与I/O设备以及其它资源得到充分利用,但也由此带来不少新的复杂问题。在讨论操作系统的特性时,往往讨论支持多道程序的操作系统所具有的一些特性。 • 并发性 • 并发性又称并行性,是指能同时处理存在的多个平行活动的能力。 • 就整个系统来说,由于计算机和I/O操作并行,因此操作系统必须能控制、管理并调度这些并行的动作。
1.4.1 操作系统的特性 • 共享性 • 共享是指多个计算任务对资源的共同享用。并发活动的目的要求共享资源和信息。 • 与共享有关的问题是资源分配、对数据的同时存取,程序的同时执行以及保护程序免遭损坏等。 • 不确定性 • 对于同一程序,向其提供相同的初始数据,无论什么时候运行,都应产生相同的结果。从这个意义上看,操作系统应当是确定的。 • 但是在另一方面,它又必须能处理随时可能发生的事件,如多道程序在运行过程中对资源的要求,程序运行时产生错误的处理,以及外部设备的中断事件均是不确定的。操作系统必须对这类事件进行响应,即要求操作系统能够处理任何一种事件序列,以使各个用户的算题任务正确地完成。
1.4.2 操作系统的性能指标 操作系统的性能指标是对系统性能和特征的描述,它与计算机系统的性能有着密切的联系。 主要的性能指标: • 系统的RSA • RSA是指系统的可靠性、可维修性和可用性三者的总称。 • 可靠性(R):指系统能正常工作的时间的平均值 • 可维修性(S):通常用平均故障修复时间MTRF来度量,它指从故障发生到故障修复所需要的平均时间。 • 可用性(A):指系统在执行任务的任意时刻能正常工作的概率。它可以表示为: • A=MTBF/(MTBF+MTRF) 由此可见,当MTBF越大,MTRF越小,则A就越大,即系统能正常工作的概率就越大。
1.4.2 操作系统的性能指标 • 系统吞吐率 • 指系统在单位时间内所处理的信息量。 • 系统响应时间 • 指从给定系统输入到开始输出这一段时间间隔。 • 系统资源利用率 • 在给定的时间内,系统内的某一资源的实际使用时间所占的比例。 • 可维护性 • 主要有两层含义: • 一是指在系统运行过程中,不断排除系统设计中遗留下来的错误; • 二是对系统的功能做某些修改或扩充,以适应新的环境或新的要求。 • 可移植性 • 可移植性是指把一个操作系统从一个硬件环境转移到另一个硬件环境所需要的工作量。
1.5 中断系统 1.5.1 什么叫中断 1.5.2 中断装置 1.5.3 管态和目态 1.5.4 中断分类 1.5.5 中断屏蔽 1.5.6 中断优先级 1.5.7 中断处理
1.5.1 什么叫中断 中断是指当计算机系统发生某一事件后,CPU暂停正在执行的程序,转去执行该事件的处理程序,待该事件处理完后再回到暂停的程序处继续执行。 • 在计算机系统中,引入中断主要有下列原因: • 中断的首先引入是为了解决慢速的I/O设备与快速的CPU之间的矛盾。 • 计算机系统通过中断进行驱动。 总之,为了实现计算机系统的自动化工作,实现各部件的并行活动,系统必须具备有中断处理的能力。 中断系统具有两个主要的作用: • 一是能充分发挥处理机的使用效率; • 二是提高系统实时处理能力。
1.5.2 中断装置 由于中断是随机事件,为了寄存、检测中断,便于中断处理,在计算机系统中所设置的装置,称为中断装置。 • 中断寄存器 • 为了区分和不丢失每个中断信号,通常对应每个中断源都分别用一个固定的触发器来寄存中断信号。并常规定其值为1时,表示该触发器有中断信号;其值为0时,表示无中断信号。这些寄存中断信号触发器的全体称为中断寄存器。 • 中断扫描机构 • 该机构通常在每条机器指令执行周期内的最后时刻扫描中断寄存器,查看是否有中断信号到来。若无中断信号,CPU继续执行程序的后继指令;若有中断信号,则停止CPU的后继指令执行,无条件转去执行操作系统内的中断处理程序。
1.5.3 管态和目态 在计算机系统中,CPU执行着两类性质不同的程序。 • 一类是用户程序或系统外层的应用程序 • 另一类是操作系统程序。 • 后一类程序是对前一类程序的管理和控制者。 • 在系统中设置一个标志触发器,取值1或0,用于标志正在运行的属于哪一类程序。 • 若规定标志触发器取值为1表示处于系统程序运行状态,则称为管态,或称为系统态; • 若标志触发器取值为0表示处于用户程序运行状态,则称为目态,或称用户态。 • 在管态下运行的程序称为管理程序 • 在目态下运行的程序称为目的程序
1.5.4 中断分类 在实际系统中,为了处理上的方便,通常用不同的分类方法把系统内的所有中断信号分成若干类。 根据中断信号的含义和功能,把中断分为: • 机器故障中断 • 它是机器发生错误时产生的中断,用以反映硬件故障,以便进入诊断程序。 • 程序中断 • 它是程序因错误使用指令或数据引起的中断,用来反映程序执行过程中发现的例外情况。 • 外部中断 • 它是来自计算机外部的某些装置的中断,用于反映外界的要求。
1.5.4 中断分类 • 输入输出中断 • 来自通道或外部设备的中断,反映通道或设备的工作状态。 • 访管中断 • 在程序运行过程中对操作系统提出某种请求时,可通过中断的办法,进入操作系统,这种中断称为访管中断。 • 对于以上的中断,也有的将其分为两类,前四种称为强迫性中断,第五种中断称为自愿性中断。 根据中断信号的来源,把中断一般分为两类: • 外中断,指来自CPU以外事件的中断。 • 内中断,指来自CPU内部事件的中断。
1.5.5 中断屏蔽 • 中断屏蔽 • 指使某些中断暂时不起作用的措施,虽然出现了该种中断的条件,但不对它进行处理,而中断源仍然保留,直到解除屏蔽后才响应中断。 • 要实现中断屏蔽功能,和中断寄存器一样,可对每种屏蔽要求设置一个专门触发器作为屏蔽标志位,且规定标志位为1表示屏蔽,标志位为0表示不屏蔽。 • 中断屏蔽与禁止中断不同 • 前者表明硬件已接受了中断请求只是暂时不响应,等中断屏蔽撤消时,再响应该中断,并作适当的处理。后者是连中断请求也不让提出,当然更谈不上响应与处理了。 • 中断屏蔽和禁止中断都是由程序安排的指令然后通过硬件中断系统实现的。一般来说,屏蔽方式可以用来屏蔽某一级,或某一级中的某一位,而禁止方式只能用来禁止某些位。
1.5.6 中断优先级 • 把中断享有的高、低不同的响应权利,称为中断优先权,或中断优先级。 • 对于一个计算机系统,中断分级方法可以不同。应该规定多少级中断,每个中断应划归在哪一级,均由硬件、软件设计者根据系统的设计目标考虑,一般应考虑如下原则: • 1、按中断的重要性和处理的紧迫程度来分,通常把实时性强、影响面大的中断,列为高级中断。 • 2、把程序处理相似的中断源归并为同一级。
中断入口 现行程序 保存现场 分析中断原因,进入中断处理程序 中断 中断处理程序 恢复现场 推出中断 图1-6 中断处理的一般过程 1.5.7 中断处理 • 中断处理的一般过程为: • 保存现场; • 分析中断原因,进入相应的中断处理程序; • 恢复现场,退出中断。