进程的复习(一)

进程的定义

进程:一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。

进程的组成

一个进程应该包括:
	程序的代码;
	程序处理的数据;
	程序计数器中的值,指示下一条将运行的指令;
	一组通用的寄存器的当前值,堆,栈;
	一组系统资源(如打开的文件)
		总之进程包含了正在运行的一个程序的所有状态信息

进程与程序的联系

	程序是产生进程的基础
	程序的每次运行构成不同的进程
	进程是程序功能的体现
	通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程
	可包扩多个程序

进程的特点

动态性:可动态地创建 结束进程
并发性:进程可以被独立调度并占用处理机运行;并发并行
独立性:不同的进程的工作不相互影响
制约性:因访问共享数据/资源或进程间同步而产生制约

程序=算法+数据结构
描述进程的数据结构:PCB
操作系统为每个进程都维护了一个PCB,用来保存与该进程有关的各种状态信息

进程控制结构

进程控制块:操作系统管理控制进程运行所用的信息集合。
操作系统用PCB来描述进程的基本情况以及运行变化的过程,
PCB上进程存在的唯一标志。

使用进程控制块

进程的创建:为该进程生成一个PCB;
进程的终止:回收它的PCB;
进程的组织管理:通过对PCB的组织管理来实现;
PCB含有以下三大类信息
进程标识信息。如本进程的标识,本进程的产生者标识(父进程标识);用户标识。
处理及状态信息保存区。保存进程的运行现场信息
用户可见寄存器。用户程序可以使用的数据,地址等寄存器。
控制和状态寄存器。如程序计数器,程序状态子
栈指针。过程调用/系统调用/中断处理和返回时需要用到它。
进程控制信息
调度和状态信息。用于操作系统调度进程并占用处理机使用。
进程间通信信息。为支持进程间的与通信信息相关的各种表示/信号/信件/等,
这些信息存在接受放的进程控制块中。
储存管理信息,包含有志向本进程映像存储空间的数据结构。
进程所用资源,说明由进程打开/使用的系统资源,如打开的文件等。
有关数据结构连接信息,进程可以连接到一个进程队列中,或连接到相关的其他进程的PCB
PCB的组织方式
链表:同一状态的的进程其PCB成一链表,多个状态对应多个不同的链表
索引表:同一状态的进程归入一个index表,多个状态对应多个不同的index表

进程管理

进程的生命期管理
	进程创建
	进程运行
	进程等待
	进程唤醒
	进程结束
进程创建
引起进程创建的3个主要事件:
	系统初始化时
	用户请求创建一个新进程
	正在运行的进程执行了创建进程的系统调用
进程运行
内核选择一个就绪的进程,让他占用处理机并执行
进程等待
在以下情况下进程等待(阻塞):
1.请求并等待系统服务,无法马上完成
2.启动某种操作,无法马上完成
3.需要的数据没有到达
进程只能阻塞自己,因为只有进程自身才能知道何时需要等待某种事件的发生
进程唤醒
唤醒进程的原因:
1被阻塞进程需要的资源可被满足
2被阻塞进程等待的事件到达
3将该进程的PCB插入到就绪队列
进程结束
在以下四种情形下,进程结束:
正常退出(自愿的)
错误退出(自愿的)
致命错误(强制性的)
被其他进程所杀(强制性的)

进程状态变化模型

进程的三种基本状态:
	进程在生命结束前处于且仅处于三种基本状态之一
不同系统设置的进程状态数目不同。
	运行状态:当一个进程正在处理机上运行时
	就绪状态:一个进程获得了除处理机以外的一切所需资源,一旦得到处理机即可运行
	等待状态:一个进程正在等待某一事件而暂停运行时。如等待某资源,等待输入/输出完成
进程其他的基本状态:
	创建状态:一个进程正在被创建,还没被转到就绪状态之前的状态。
	结束状态:一个进程正在从系统中消失时的状态,这是因为进程结束或由于其他原因所导致。

进程挂起

why?合理切充分地利用系统资源。
进程在挂起状态时,意味着进程没有占用内存空间。处在挂起状态的进程映像在磁盘上。
阻塞挂起状态:进程在外存并等待某事件的出现。
就绪挂起状态:进程在外存,但只要进入内存,即可运行
挂起:把一个进程从内存转到外存;可能有以下几种情况:
	阻塞到阻塞挂起
	就绪到就绪挂起
	运行到就绪挂起
在外存时的状态转换:
	阻塞挂起到就绪挂起
解挂/激活:把一个进程从外存转到内存;可能有以下几种情况:
	就绪挂机到就绪
	阻塞挂起到阻塞
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值