第2章_操作系统基础知识_第1页
第2章_操作系统基础知识_第2页
第2章_操作系统基础知识_第3页
第2章_操作系统基础知识_第4页
第2章_操作系统基础知识_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 操作系统基础知识1第2章 操作系统基础知识2.1 2.1 操作系统概论操作系统概论2.2 2.2 进程管理进程管理2.3 2.3 进程同步与互斥进程同步与互斥第2章 操作系统基础知识22.1 2.1 操作系统概论操作系统概论 计算机发展到今天,从个人计算机到巨型计算机系统,毫无例外都配置一种或多种操作系统。操作系统管理和控制计算机系统中的所有软、硬件资源,是计算机系统的灵魂和核心。除此之外,它还为用户使用计算机提供一个方便灵活、安全可靠的工作环境。第2章 操作系统基础知识32.1.12.1.1什么是操作系统什么是操作系统 操作系统是用以控制和管理计算机硬件和软件资源、合理地组织计算机的

2、工作流程以及方便用户使用计算机的程序的集合。这个定义具有以下三个方面的含义:1、操作系统统一控制和管理计算机系统所拥有的硬件和软件资源,使之可以得到更加有效合理的利用。2、操作系统能合理地组织计算机系统的工作流程,增强系统的处理能力。3、操作系统提供了用户与裸机之间的接口,使用户更方便地使用计算机。第2章 操作系统基础知识42.1.2操作系统的特征操作系统的特征 操作系统的特性主要包括四个方面:并发性,共享性,异步性和虚拟性,下面分别阐述。1、并发性:并发性是指在计算机系统中同时存在有多个程序,从宏观上看,这些程序是同时向前推进的。2、共享性:共享性是指操作系统程序与多个用户程序共享系统中的各

3、种资3、异步性: 操作系统的运行是在一个随机的环境中运行的,即用户不能对所运行的程序的行为以及硬件设备的情况做任何的假定。我们无法知道一个运行着的程序会在什么时候做什么事情,也无法知道一个设备什么时候向处理器发出中断请求,因此我们也无法知道操作系统正处于什么样的状态之中。第2章 操作系统基础知识54、虚拟性:虚拟是把物理上的一个实体变成逻辑上的多个对应物,或者把物理上的多个实体变成逻辑上的一个对应物的技术。第2章 操作系统基础知识62.1.32.1.3操作系统的功能操作系统的功能 操作系统的基本功能包括处理机管理、存储管理、设备管理、信息管理(文件系统管理)和作业管理等,下面分别进行说明:第2

4、章 操作系统基础知识71、处理机管理:处理机管理也可称为进程管理,进程管理主要是对处理机进行管理。2、存储管理:存储管理的主要工作是对内部存储器进行分配,保护和扩充。主要包括:(1) 存储分配与回收:内存分配所要解决的问题。(2) 存储保护:保证进程间互不干扰、相互保密;如:访问合法性检查、甚至要防止从“垃圾”中窃取其他进程的信。(3) 地址映射(变换):进程逻辑地址到内存物理地址的映射。(4) 内存扩充(覆盖、交换和虚拟存储):提高内存利用率、扩大进程的内存空间。第2章 操作系统基础知识83、设备管理:设备管理的主要任务是管理各类外围设备,完成用户提出的I/O请求,加快I/O信息的传送速率,

5、发挥I/O设备的并行性,提高I/O设备的利用率,以及提供每种设备的设备驱动程序和中断处理程序,为用户隐蔽硬件细节,提供方便简单的设备使用方法。为实现这些任务,设备管理应该具有以下功能:1)提供外围设备的控制与处理;2) 提供缓冲区的管理3) 提供设备独立性 4) 外围设备的分配和去配5) 实现共享型外围设备的驱动调度6) 实现虚拟设备第2章 操作系统基础知识94、信息管理:系统中的信息资源(程序和数据)是以文件的形式存放在外存储器上的,需要时再将其装入。信息管理的任务就是有效支持文件存储、检索修改,解决文件共享、保密和保护,以方便用户安全、方便地访问文件。5、作业管理:作业管理也称为用户接口,

6、其基本任务是使用户合理调度运行用户作业。操作系统向上提供两种接口:(1) 程序一级的接口: (2) 作业一级的接口:第2章 操作系统基础知识102.1.4 2.1.4 操作系统的历史操作系统的历史操作系统的发展和计算机的组成与体系结构相关,经历了四个发展阶段: 1946年50年代末:第一代,电子管时代,无操作系统。1950年代末60年代中期:第二代,晶体管时代,批处理系统。1960年代中期-70年代中期:第三代,集成电路时代,多道程序设计。1970年代中期至今:第四代,大规模和超大规模集成电路时代,分时系统。 现代计算机正向着巨型、微型、并行、分布、网络化和智能化几个方面发展。第2章 操作系统

7、基础知识11下面分别描述操作系统的四个不同发展时期。1、手工操作2、单道批处理系统(simple batch processing)。早期批处理又分为两种:联机批处理和脱机批处理。 3、多道程序系统:所谓多道是指允许多个程序同时存在于主存中,由中央处理器以切换方式为之服务,使得多个程序可以同时执行,计算机资源不再被某一个用户所独占。4、分时系统:这种系统是在一台计算机上挂若干台联机终端,用户通过自己的终端与计算机对话来控制、调试、干预他的程序。而系统则是将处理机的时间划分为小的时间间隔(又称时间片),轮流地为每个终端上的作业服务,使每个用户都感觉好象自己在使用计算机。第2章 操作系统基础知识1

8、22.1.5操作系统的分类操作系统的分类根据操作系统在用户界面的使用环境和功能特征的不同,操作系统一般可分为三种基本类型,即批处理系统、分时系统和实时系统。随着计算机体系结构的发展,又出现了嵌入式操作系统、个人操作系统、网络操作系统和分布式操作系统等,批处理操作系统和分时操作系统在前文已经介绍 。1、实时操作系统:实时操作系统是指计算机能及时响应外部事件的请求,在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作的操作系统。第2章 操作系统基础知识132、分布式操作系统:大量的计算机通过网络被连接在一起,可以获得极高的运算能力和广泛的数据共享。这种系统被称为分布式操

9、作系统。分布式操作系统具有:统一性、共享性、“透明性和自治性的特征。3、网络操作系统:网络操作系统是基于计算机网络的一种操作系统,是在各种计算机操作系统之上按网络体系结构协议标准开发的软件,包括网络管理、通讯、安全、资源共享和各种网络应用。其主要目标是计算机之间的相互通讯和资源共4、嵌入式操作系统:在本书第一章已经进行详细描述。 第2章 操作系统基础知识14 2.2 2.2 进程管理进程管理 现代操作系统的重要特点是程序的并发执行,及系统所拥有的资源被共享和系统的用户随机地使用。这三个特点是互相联系和互相依赖的,它们是互相独立的用户如何使用有限的计算机系统资源的反映。通常,操作系统的重要任务之

10、一是使用户充分、有效地利用系统资源。采用一个什么样的概念,来描述计算机程序的执行过程和作为资源分配的基本单位才能充分反映操作系统的执行并发、资源共享及用户随机的特点呢?这个概念就是进程。为了掌握进程的概念进而掌握进程管理的相关知识,我们从程序的并发概念开始,进而学习进程的特征和状态,再学习进程控制。第2章 操作系统基础知识152.2.1 程序的并发执行程序的并发执行顺序执行的特征:顺序性:也就是每执行一条指令,系统就从上一个执行状态转移到下一个执行状态,且上一条指令的执行结束是下一条指令执行开始的充分必要条件;封闭性:程序执行得到的结果由给定的初始条件决定,不受外界因素的影响;可再现性:顺序执

11、行的最终结果可再现是说它与执行速度无关。只要输入的初始条件相同,则无论何时重复执行该程序都会得到相同的结果。第2章 操作系统基础知识16程序的并发执行是指:若干个程序同时在系统中执行,这些程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。并发执行的特征: 间断性,一个程序可能走到中途停下来,失去原有的时序关系 失去封闭性,共享资源,受其他程序的控制逻辑的影响 不可再现性,外界环境在程序的两次执行期间发生变化,失去原有的可重复特征第2章 操作系统基础知识172.2.2 进程的定义进程的定义进程有很多各式各样的定义,如: 行为的一个规则叫做程序,程序在处理机上执行时所发

12、生的活动称为进程。 一个具有一定功能的程序关于某个数据集合的一次运行活动。 这里给出得到较多认可的一种进程的定义:进程是具有独立功能的程序对某个数据集在处理机上的执行过程和分配资源的基本单位。第2章 操作系统基础知识18下面列出进程和程序间的区别: (1) 进程是一个动态的概念,而程序则一个是静态的概念。程序是指令的有序集合,没有任何执行的含义。而进程 则强调执行过程,它动态的被创建,并被调度执行后消亡。 (2) 进程具有并行特性,而程序没有。 (3) 进程是竞争计算机系统资源的基本单位,从而其并行性受到系统自己的制约。这里,制约就是对进程独立性和异步性的限制。 (4) 不同的进程可以包含同一

13、程序,只要该程序所对应的数据集不同。第2章 操作系统基础知识192.2.3进程的特征和状态进程的特征和状态进程的特征有: 结构特征:由程序段、数据段、进程控制块三部分组成; 动态性:进程是程序的执行; 并发性:多个进程可同存于内存中,能在一段时间内同时运行; 独立性:独立运行的基本单位,独立获得资源和调度的基本单位; 异步性:各进程按各自独立的不可预知的速度向前推进。第2章 操作系统基础知识20 进程的状态在不同的系统有不同的模型,但是三状态模式是各种模型的基础,基本上所有进程的状态模型都包含三种基本的状态。图2.3 进程的三状态模型第2章 操作系统基础知识21对各状态的描述: 就绪状态(Re

14、ady):存在于处理机调度队列中的那些进程,它们已经准备就绪,一旦得到CPU,就立即可以运行。这些进程所处的状态为就绪状态。 运行状态(Running):正在运行的进程所处的状态为运行状态。在单处理机系统只有一个进程处于运行状态,而多处理机系统中有多个进程处于运行状态。 等待状态(Wait / Blocked):若一进程正在等待某一事件发生(如等待输入输出工作完成),这时,即使给它分配CPU,它也无法运行,称该进程处于等待状态。第2章 操作系统基础知识22 除了三状态模型还有五状态模型和七态模型图2.4 进程的五状态模型第2章 操作系统基础知识23图2.5 进程的七状态模型第2章 操作系统基础

15、知识242.2.4 2.2.4 进程控制块进程控制块 进程控制块的英文是“Process Control Block”,简称PCB。进程控制块PCB集中反映一个进程的动态特征。在进程并发执行时,由于资源共享,带来各进程之间的相互制约。显然,为了反映这些制约关系和资源共享关系,在创建一个进程时,应首先创建其PCB,然后才能根据PCB中信息对进程实施有效的管理和控制。当一个进程完成其功能时之后,系统则释放PCB,进程也随之消亡。第2章 操作系统基础知识25进程控制块的内容包括: 进程描述信息: 进程名或进程标识号:每个进程都有唯一的进程名或进程标识号。在识别一个进程时,进程名或进程标识号代表该进程

16、。 用户名或用户标识号:每个进程都隶属于某个用户,用户名或用户标识号有利于资源共享与保护。 家族关系:在有的系统中,进程之间互成家族关系,某个进程创建了一个新进程,则前者称为后者的父进程,后者为前者的子进程。第2章 操作系统基础知识26进程控制信息: 进程当前状态:说明进程当前处于何种状态。进程在活动期间可分为就绪态、执行态和等待状态。 进程优先级(priority):进程优先级是选取进程占有处理机的重要依据。与进程优先级有关的PCB表项还有:占有CPU时间,进程优先级偏移,占据内存时间等。 程序开始地址:程序开始地址规定该进程的程序以此地址开始执行。 各种计时信息:给出进程占有和利用资源的有

17、关情况。 通信信息:通信信息用来说明该进程在执行过程中与别的进程所发生的信息交换情况。第2章 操作系统基础知识27资源管理信息: 占用内存大小及其管理用数据结构指针。 在某些复杂系统中,还有对换或覆盖用的有关信息。 共享程序段大小及起始地址。 输入输出设备的设备号,所要传送的数据长度、缓冲区地址、缓冲区长度及所用设备的有关数据结构指针等。 指向文件系统的指针及有关标识等。进程可使用这些信息对文件系统进行操作。CPU现场保护结构:寄存器值(通用、程序计数器PC、状态PSW,地址包括栈指针)第2章 操作系统基础知识282.2.52.2.5进程控制进程控制进程控制就是对系统中的所有进程实施管理,进程

18、控制一般由OS的内核来实现。一般,我们把系统态下执行的某些具有持定功能的程序段称为原语。原语可分为两类: 机器指令级的:其特点是执行期间不允许中断,它是一个不可分割的基本单位。 功能级的:其特点是作为原语的程序段不允许并发执行。用于进程控制的原语有:创建原语,撤消原语,阻塞原语,唤醒原语等。第2章 操作系统基础知识291.创建原语进程创建方式有以下几种: 1)由系统程序模块统一创建 2)由父进程创建 无论是系统创建方式还是父进程创建方式,都必须调用创建原语来实现。创建原语扫描系统的PCB链表,在找到一定PCB链表之后,填入调用者提供的有关参数,最后形成代表进程的PCB结构。第2章 操作系统基础

19、知识302.撤消原语进程撤消或称为“终止”,exit,或主程序返回:C中的main函数调用exit函数可终止进程。以下几种情况导致进程被撤消: 该进程已完成所要求的功能而正常终止。 由于某种错误导致非正常终止。 祖先进程要求撤消某个子进程。无论哪一种情况导致进程被撤消,进程都必须释放它所占用的各种资源和PCB结构本身,以利于资源的有效利用。第2章 操作系统基础知识313.创建原语和撤消原语 进程的创建原语和撤消原语完成了进程从无到有,从存在到消亡的变化。被创建后的进程最初处于就绪状态,然后经调度程序选中后进入执行状态。进程的执行状态到等待状态,又由等待状态到就绪状态转换的需要另外两种原语:阻塞

20、原语与唤醒原语来实现。4.挂起和激活原语 当需要把某一进程置于挂起状态时调用挂起原语。 激活原语是将原来处于挂起就绪或者阻塞就绪的进程改为就绪状态或者阻塞状态,被激活的进程可以重新参与调度。第2章 操作系统基础知识322.3 进程同步与互斥进程同步与互斥 在理解进程同步和互斥之前,需要先了解临界资源和临界区的概念:象打印机这类资源一次只允许一个进程使用的资源称为临界资源。允许进程间共享,即可交替使用的资源称为共享资源,而临界资源又称独享资源。 多个进程共享临界资源时必须互斥使用,把访问临界资源的那段代码(称为临界区) 。 把异步环境下的一组并发进程因直接制约而互相发消息而进行互相合作,互相等待

21、,使得各进程按一定的速度执行的过程称为进程同步。 不允许两个以上的共享该资源的并发进程同时进入临界区称为互斥。第2章 操作系统基础知识33 实现进程互斥和同步的信号量机制有软件方法、硬件指令方法、信号量机制和管程等。在这里主要介绍信号量机制。信号量(semaphore)将交通管制中多种颜色的信号灯管理交通的方法引入操作系统,让两个或多个进程通过特殊变量展开交互。信号量需要P,V操作原语配合使用:P(S)操作原语void P ( struct semaphore S )S.value -;if ( S.value =0,则进程继续执行;若相减结果0,则进程被封锁,并将它插入到该信号灯的等待队列之

22、中,然后转进程调度程序。V(S)操作原语void V ( struct semaphore S )S.value +;if ( S.value 0,则进程继续执行;若相加结果=0,则从该信号灯的等待队列中移出一个进程,解除它的等待状态,然后返回本进程继续执行。第2章 操作系统基础知识36根据信号量的用途不同,信号量分为公用信号量和私用信号量两类: 公用信号量:每个进程均可对他施加P操作和V操作的信号量。初值为1。通常作为互斥信号量。 私用信号量:允许一个进程对他施加P操作,其它进程只能对他进行V操作的信号量。初值为0或某个正整数n。通常作为同步信号量。第2章 操作系统基础知识37下面再通过一个经典的生产者/消费者问题来加深对进程同步和互斥的理解。(1)有一群生产者(producer)进程在生产消息, 并

温馨提示

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

评论

0/150

提交评论