进程控制块PCB
- 格式:ppt
- 大小:118.01 KB
- 文档页数:26
进程控制块PCB(ProcessControlBlock)展开全文进程控制块(PCB,Process Control Block),台湾译作行程控制表,亦有译作任务控制表,是操作系统内核中一种数据结构,主要表示进程状态。
虽各实际情况不尽相同,PCB通常记载进程之相关信息,包括:进程状态:可以是new、ready、running、waiting或halted等。
当新建一个进程时,系统分配资源及PCB给它。
而当其完成了特定的任务后,系统收回这个进程所占的资源和取消该进程的PCB就撤消了该进程。
程序计数器:接着要运行的指令地址。
CPU寄存器:如累加器、索引寄存器(en:Index register)、堆栈指针以及一般用途寄存器、状况代码等,主要用途在于中断时暂时存储数据,以便稍后继续利用;其数量及类因计算机架构有所差异。
CPU 排班法:优先级、排班队列等指针以及其他参数。
存储器管理:如标签页表(en:Page table)等。
会计信息:如CPU与实际时间之使用数量、时限、帐号、工作或进程号码。
输入输出状态:配置进程使用I/O 设备,如磁带机。
总言之,PCB如其名,内容不脱离各进程相关信息。
进程控制块本词条缺少信息栏、名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。
或者说,OS是根据PCB来对并发执行的进程进行控制和管理的。
PCB通常是系统内存占用区中的一个连续存区,它存放着操作系统用于描述进程情况及控制进程运行所需的全部信息,它使一个在多道程序环境下不能独立运行的程序成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。
目录1进程控制块的基本内容概述应用2实例Linux task_structtask_struct结构描述1进程控制块的基本内容编辑概述进程控制块(PCB)(系统为了管理进程设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。
计算机考研常见操作系统名词解释计算机考研常见操作系统名词翻译【进程控制块(pcb)】系统为了管理进程设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。
系统利用pcb来控制和管理进程,所以pcb是系统感知进程存在的唯一标志。
进程与pcb是一一对应的。
【文件控制块(fcb)】文件控制块是操作系统为管理文件而设置的数据结构,存放了为管理文件所需的所有有关信息。
文件控制块是文件存在的标志。
【作业步】一般情况下,一个作业可划分成若干个部分,每个部分称为一个作业步。
在作业运行期间,各作业步之间存在着相互联系,往往上一个作业步的结果作为下一个作业步的输入。
【字符流文件】构成文件的基本单位是字符,文件是有逻辑意义的、无结构的一串字符的集合。
【死锁】一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。
【当前目录】为了提高文件检索速度,文件系统向用户提供了一个当前正在使用的目录,称为当前目录。
【快表】介于内存与寄存器之间的存储机制,它又叫快表。
【作业调度】根据一定的原则,从输入井的后备作业队列中选择适当的作业,为它分配内存等资源,并将其调入内存投入运行。
又称高级调度,远程调度。
【地址映射】为了保证cpu执行指令时可正确访问存储单元,需将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址,这一过程称为地址映射。
【死锁避免】在系统运行过程中,对进程发出的每一个系统能够满足的资源申请进行动态检查,并根据检查结果决定是否分配资源,若分配后系统可能发生死锁,则不予分配,否则予以分配。
【作业控制块】os向用户提供一组作业控制语言,用户用这种语言书写作业说明书,然后将程序、数据和作业说明书一齐交给系统操作员。
【虚存】把内存与外存有机的结合起来使用,从而得到一个容量很大的“内存”,这就是虚存。
【中断】cpu对系统发生的某个事件作出的一种反应:cpu暂停正在执行的程序,保留现场后自动转去执行相应事件的处理程序,处理完成后返回断点,继续执行被打断的程序。
实验一进程管理一、目的进程调度是处理机管理的核心内容。
本实验要求编写和调试一个简单的进程调度程序。
通过本实验加深理解有关进程控制块、进程队列的概念,并体会和了解进程调度算法的具体实施办法。
二、实验内容及要求1、设计进程控制块PCB的结构(PCB结构通常包括以下信息:进程名(进程ID)、进程优先数、轮转时间片、进程所占用的CPU时间、进程的状态、当前队列指针等。
可根据实验的不同,PCB结构的内容可以作适当的增删)。
为了便于处理,程序中的某进程运行时间以时间片为单位计算。
各进程的轮转时间数以及进程需运行的时间片数的初始值均由用户给定。
2、系统资源(r1…r w),共有w类,每类数目为r1…r w。
随机产生n进程P i(id,s(j,k),t),0<=i<=n,0<=j<=m,0<=k<=dt为总运行时间,在运行过程中,会随机申请新的资源。
3、每个进程可有三个状态(即就绪状态W、运行状态R、等待或阻塞状态B),并假设初始状态为就绪状态。
建立进程就绪队列。
4、编制进程调度算法:时间片轮转调度算法本程序用该算法对n个进程进行调度,进程每执行一次,CPU时间片数加1,进程还需要的时间片数减1。
在调度算法中,采用固定时间片(即:每执行一次进程,该进程的执行时间片数为已执行了1个单位),这时,CPU时间片数加1,进程还需要的时间片数减1,并排列到就绪队列的尾上。
三、实验环境操作系统环境:Windows系统。
编程语言:C#。
四、实验思路和设计1、程序流程图2、主要程序代码//PCB结构体struct pcb{public int id; //进程IDpublic int ra; //所需资源A的数量public int rb; //所需资源B的数量public int rc; //所需资源C的数量public int ntime; //所需的时间片个数public int rtime; //已经运行的时间片个数public char state; //进程状态,W(等待)、R(运行)、B(阻塞)//public int next;}ArrayList hready = new ArrayList();ArrayList hblock = new ArrayList();Random random = new Random();//ArrayList p = new ArrayList();int m, n, r, a,a1, b,b1, c,c1, h = 0, i = 1, time1Inteval;//m为要模拟的进程个数,n为初始化进程个数//r为可随机产生的进程数(r=m-n)//a,b,c分别为A,B,C三类资源的总量//i为进城计数,i=1…n//h为运行的时间片次数,time1Inteval为时间片大小(毫秒)//对进程进行初始化,建立就绪数组、阻塞数组。
国家开放大学《操作系统》章节测试参考答案第1章操作系统概述一、单项选择题1.操作系统的基本职能是()。
A. 提供用户界面,方便用户使用B. 提供方便的可视化编辑程序C. 提供功能强大的网络管理工具D. 控制和管理系统内各种资源,有效地组织多道程序的运行2.按照所起的作用和需要的运行环境,操作系统属于()。
A. 应用软件B. 系统软件C. 支撑软件D. 用户软件3.在计算机系统中,操作系统是()。
A. 处于裸机之上的第一层软件B. 处于系统软件之上的用户软件C. 处于应用软件之上的系统软件D. 处于硬件之下的低层软件4.现代操作系统的基本特征是()、资源共享和操作的异步性。
A. 程序的并发执行B. 实现分时与实时处理C. 多道程序设计D. 中断处理5.以下不属于操作系统具备的主要功能的是()。
A. 中断处理B. CPU调度C. 内存管理D. 文档编辑6.为用户分配主存空间,保护主存中的程序和数据不被破坏,提高主存空间的利用率。
这属于()。
A. 存储管理B. 作业管理C. 文件管理D. 处理器管理7.操作系统对缓冲区的管理属于()的功能。
A. 设备管理B. 存储器管理C. 文件管理D. 处理器管理8.操作系统内核与用户程序、应用程序之间的接口是()。
A. shell命令B. C语言函数C. 图形界面D. 系统调用9.系统调用是由操作系统提供的内部调用,它()。
A. 与系统的命令一样B. 直接通过键盘交互方式使用C. 是命令接口中的命令D. 只能通过用户程序间接使用10.在下列操作系统中,强调吞吐能力的是()。
A. 多道批处理系统B. 实时系统C. 网络系统D. 分时系统11.批处理系统的主要缺点是()。
A. CPU的利用率不高B. 系统吞吐量小C. 不具备并行性D. 失去了交互性12.为了使系统中所有的用户都能得到及时的响应,该操作系统应该是()。
A. 分时系统B. 网络系统C. 实时系统D. 多道批处理系统13.下面不属于分时系统特征的是()。
操作系统练习二20201.在操作系统中引入“进程”概念的主要目的是()。
选择一项:A. 描述程序动态执行过程的性质B. 使程序与计算过程一一对应C. 提高程序的运行速度D. 改善用户编程环境【解析】引入进程就是为了描述程序动态执行过程的性质。
正确答案是:描述程序动态执行过程的性质2.进程与程序之间有密切联系,但又是不同的概念。
二者的一个本质区别是()。
选择一项:A. 程序顺序执行,进程并发执行B. 程序保存在文件中,进程存放在内存中C. 程序是静态概念,进程是动态概念D. 程序是动态概念,进程是静态概念【解析】进程是程序在并发环境中的执行过程,引入进程就是为了描述程序动态执行时的性质。
正确答案是:程序是静态概念,进程是动态概念3.在操作系统中,进程的最基本的特征是()。
选择一项:A. 动态性和并发性B. 顺序性和可再现性C. 执行过程的封闭性D. 与程序的对应性【解析】进程的特征教材上有5个,但最基本的特征就是动态性和并发性。
正确答案是:动态性和并发性4.为了描述进程的动态变化过程,采用了一个与进程相联系的(),根据它而感知进程的存在。
选择一项:A. 进程状态字B. 进程起始地址C. 进程控制块D. 进程优先数【解析】计算机系统通过进程控制块来识别和控制进程。
进程控制块是进程动态特性的集中反映。
正确答案是:进程控制块5.进程控制块是描述进程状态和特性的数据结构,一个进程()。
选择一项:A. 只能有唯一的进程控制块B. 可以有多个进程控制块C. 可以和其他进程共用一个进程控制块D. 可以没有进程控制块【解析】一个进程只能有唯一的进程控制块。
正确答案是:只能有唯一的进程控制块6.在单处理机系统中,处于运行状态的进程()。
选择一项:A. 只有一个B. 必须在执行完后才能被撤下C. 不能被挂起D. 可以有多个【解析】在一般单CPU系统中,任何时刻处于运行状态的进程至多是一个。
在多处理器系统中,同时处于运行状态的进程可以有多个。
第二章进程管理习题及答案一、填空题1.进程的静态描述由三部分组成:①、②和③。
【答案】①PCB、②程序部分、③相关的数据结构集【解析】PCB是系统感知进程的唯一实体。
进程的程序部分描述了进程所要完成的功能,而数据结构集是程序在执行时必不可少的工作区和操作对象。
后两部分是进程完成所需功能的物质基础。
2.进程存在的标志是。
【答案】进程控制块PCB【解析】系统根据PCB感知进程的存在和通过PCB中所包含的各项变量的变化,掌握进程所处的状态以达到控制进程活动的目的。
3.①是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了②这一概念。
【答案】①程序的并发执行,②进程【解析】程序的并发执行和资源共享是现代操行系统的基本特征。
程序的并发执行使程序失去了程序顺序执行时所具有的封闭性和可再现性。
在程序并发执行时,程序这个概念不能反映程序并发执行所具有的特性,所以引入进程概念来描述程序并发执行所具有的特点。
4.给出用于进程控制的四种常见的原语①、②、③和④。
【答案】①创建原语、②撤消原语、③阻塞原语、④唤醒原语【解析】进程控制是系统使用一些具有特定功能的程序段来创建、撤消进程以及完成进程各状态间的转换,从而达到多个过程高效率地并行执行和协调,实现资源共享的目的。
把那些在管态下执行的具有特定功能的程序段称为原语。
5.进程被创建后,最初处于①状态,然后经②选中后进入③状态。
【答案】①就绪,②进程调度程序,③运行【解析】进程的从无到有,从存在到消亡是由进程创建原语和撤消原语完成的。
被创建的进程最初处于就绪状态,即该进程获得了除处理机以外的所有资源,处于准备执行的状态;从就绪状态到运行状态的转换是由进程调度程序来完成的。
6.进程调度的方式通常有①和②方式两种。
【答案】①可剥夺、②非剥夺【解析】所谓可剥夺方式,是指就绪队列中一旦有优先级高于当前运行进程的优先级的进程存在时,便立即发生进程调度,转让处理机。
而非剥夺方式则是指:即使在就绪队列中存在有优先级高于当前运行进程的进程,当前进程仍将继续占有处理机,直到该进程完成或某种事件发生(如I/O事件)让出处理机。
unixPCB的各项内容及用途一.PCB包括根本控制块proc和扩充控制块user两局部。
Proc——根本控制块。
只占PCB一小局部,记录进程状态、优先数等直接与进程调度有关的信息,不管对应的进程是否运行,系统都要查询和修改这些信息,所以常驻内存。
User——扩充控制块。
User是proc的扩充局部,当进程处于运行状态时,才查询和处理这些信息,所以当进程不在处理机上运行时,该进程的user结构可能被交换到外存,当该进程被调度运行时再交换入内存。
二.进程控制块:在UNIX系统Ⅴ中,把进程控制块(PCB)分为四局部:(1) 进程表项,其中包括最常用的核心数据。
(2) U区,用于存放用户进程表项的一些扩充数据。
(3) 系统区表,存放各个区在物理存储器中的地址信息等。
(4) 进程区表,用于存放各区的起始虚地址及指向系统区表中对应区表项的指针。
1.进程表项(Process Table Entry)用于描述和控制一个进程的信息通常都很多,其中有些是经常要被访问的,如进程标识符、进程状态等。
为了提高对这些信息访问的效率,系统设计者将这些信息放在进程表项中,又称之为Proc表或Proc结构,使之常驻内存。
在每个进程表项中,含有下述一些具体信息:(1) 进程标识符(PID),也称内部标识符,为方便用户使用,这里惟一地标识一个进程的某个整数。
(2) 用户标识符(UID),标识拥有该进程的用户。
(3) 进程状态,表示该进程的当前状态。
(4) 事件描述符,记录使进程进入睡眠状态的事件。
(5) 进程和U区在内存或外存的地址,核心可利用这些信息做上、下文切换。
(6) 软中断信息,记录其它进程发来的软中断信号。
(7) 计时域,给出进程的执行时间和对资源的利用情况。
(8) 进程的大小,这是核心在为进程分配存储空间时的依据,包括正文段长度和栈段长度等。
(9) 偏置值nice,供计算该进程的优先数时使用,可由用户设置。
(10) P_Link指针,这是指向就绪队列中下一个PCB的指针。
操作系统前三章1、现代操作系统的特征是:并发性、共享性、虚拟技术、异步性。
2、进程与进程控制块(PCB)是一一对应关系。
3、引入临街资源后,程序段被分为进入区、临界区、退步区、剩余区四个区域。
4、处理机的调度层次包括高级调度、中级调度和低级调度,其中,调度频率最低的是高级调度,必不可少的一种调度是低级调度,为了提高内存利用率的一种调度是中级调度。
5、产生死锁的原因是资源竞争和进程间推进顺序非法,其中引发死锁的最根本原因是资源不足。
6、刚刚创建的进程会由创建态转变为就绪态,得到处理机的调度转变为执行状态,执行中的进程如果申请资源不到,将会转变为阻塞状态,得到资源,再次转变为就绪状态,正在执行输入输出操作的进程将处于终止状态。
7、如果并发执行的五个进程都需要使用临界资源R,并且每个进程对资源R的需求量都是3,那么现在资源R至少有11个时不管怎么调度,一定不会出现死锁。
若初始时资源R有9个,每个并发进程对资源的需求量为3,则最多有4个进程并发执行一定不会出现死锁。
8、为某种临界资源设置信号量S,若S的初始值为5,当前值为3,则当前处于阻塞状态的进程有2个,系统可供分配的的该资源的个数是3个。
9、两个或两个以上的事件在同一时间间隔内发生叫并发性;两个或两个以上的事件在同一时刻发生叫并行性;所以现代操作系统的特征是并发性。
10、简述操作系统的功能:答:处理机管理功能:处理机管理应具有进程控制、进程同步、进程通信和调度等功能。
存储器管理功能:存储器管理应具有内存分配、内存保护、地址映射和内存扩充等功能。
设备管理功能:设备管理应具备缓冲管理、设备分配、设备处理等功能。
文件管理功能:文件管理应具有文件存储空间的管理、目录管理、文件的读写管理和保护等功能。
11、简述PCB的作用与组成。
答:进程控制块(PCB)是进程实体的一部分,是操作系统中最重要的记录型数据结构。
作用:是使一个在多道程序环境下不能独立运行的程序或数据,成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。