计算机操作系统教程 课件第2章_进程管理.pptx

计算机操作系统教程 课件第2章_进程管理.pptx

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

计算机操作系统;第二章进程管理;2.1进程(Process);进程管理;进程管理;进程管理;进程是程序在一个数据集合上的一次运行活动,是操作系统进行资源分配和调度的一个基本单位。;Aprocess=aprograminexecution;程序是有序代码的集合,通常对应着文件,可以复制,其本身没有任何运行的含义,是一个静态的概念。

进程是程序在处理机上的一次执行过程,它是一个动态的概念。;AprogramisCstatementsorcommands

静态的;

Aprocessisprogram+runningcontext

动态的.;有一个计算机科学家,有一天女儿过生日,想亲手给女儿做一个生日蛋糕。所以他就找了一本有关做蛋糕的食谱,买了一些原料,面粉、鸡蛋、糖、香料等,然后边看边学边做。;程序=数据结构+算法;2.2进程的状态;进程控制块中的信息;2)处理机状态

处理机状态信息主要是由处理机的各种寄存器中的内容组成的。①通用寄存器,又称为用户可视寄存器,它们是用户程序可以访问的,用于暂存信息,在大多数处理机中,有8~32个通用寄存器,在RISC结构的计算机中可超过100个;②指令计数器,其中存放了要访问的下一条指令的地址;③程序状态字PSW,其中含有状态信息,如条件码、执行方式、中断屏蔽标志等;④用户栈指针,指每个用户进程都有一个或若干个与之相关的系统栈,用于存放过程和系统调用参数及调用地址。栈指针指向该栈的栈顶。;3)进程调度信息

在PCB中还存放一些与进程调度和进程对换有关的信息,包括:①进程状态,指明进程的当前状态,作为进程调度和对换时的依据;②进程优先级,用于描述进程使用处理机的优先级别的一个整数,优先级高的进程应优先获得处理机;③进程调度所需的其它信息,它们与所采用的进程调度算法有关,比如,进程已等待CPU的时间总和、进程已执行的时间总和等;④事件,是指进程由执行状态转变为阻塞状态所等待发生的事件,即阻塞原因。;4)进程控制信息

进程控制信息包括:①程序和数据的地址,是指进程的程序和数据所在的内存或外存地(首)址,以便再调度到该进程执行时,能从PCB中找到其???序和数据;②进程同步和通信机制,指实现进程同步和进程通信时必需的机制,如消息队列指针、信号量等,它们可能全部或部分地放在PCB中;③资源清单,是一张列出了除CPU以外的、进程所需的全部资源及已经分配到该进程的资源的清单;④链接指针,它给出了本进程(PCB)所在队列中的下一个进程的PCB的首地址。;PCB中的主要内容;structtask_struct

{

...

volatilelongstate;

pid_tpid;

unsignedlonglongtimestamp;

unsignedlongrt_priority;

structmm_struct*mm,

*active_mm;

...

};;进程的三种基本状态:

进程在生命结束前处于且仅处于三种基本状态之一,不同系统设置的进程状态数目不同。;运行状态(Running):进程占有CPU,并在CPU上运行。处于此状态的进程数目小于等于CPU的数目。

就绪状态(Ready):进程已经具备运行条件,但由于CPU忙暂时不能运行,只要分得CPU即可执行;

阻塞状态(Blocked):指进程因等待某种事件的发生而暂时不能运行的状态(如I/O操作或进程同步),此时,即使CPU空闲,该进程也不能运行。;(本图摘自AndrewS.Tanenbaum:“ModernOperatingSystems”,下同);2.2进程的状态;进程转换;由操作系统来维护一组队列,用来表示系统当中所有进程的当前状态;

不同的状态分别用不同的队列来表示(运行队列、就绪队列、各种类型的阻塞队列);

每个进程的PCB都根据它的状态加入到相应的队列当中,当一个进程的状态发生变化时,它的PCB从一个状态队列中脱离出来,加入到另外一个队列。;就绪队列和各种I/O设备队列;带挂起的进程状态;引起进程创建的三个主要事件:

系统初始化时;

在一个正在运行的进程当中,执行了

创建进程的系统调用;

用户请求创建一个新进程。;从技术上来说,只有一种创建进程的方法,

即在一个已经存在的进程(用户进程或系统

进程)当中,通过系统调用来创建一个新的

进程。

Unix:fork函数;

Windows:CreateProc

您可能关注的文档

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档