进程是静态指令的运行过程,是系统进行资源分配和调度的一个独立单位
由程序块、进程控制块(PCB)和数据块三部分组成
PCB:是进程存在的唯一标志。内容包含进程标识符、状态、位置信息、控制信息、队列指针(链接同一状态的进程)、优先级、现场保护区等。
进程与程序的区别:进程是程序的一次执行过程,没有程序就没有进程。
程序是一个静态的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡;进程是系统进行资源分配和调度的独立单位,而程序不是。
进程2个基本属性:
可拥有资源的独立性,可独立调度和分配资源的基本单位
线程有独立的程序计数器、寄存器、栈
但是可以共享:内存地址空间、代码、数据、文件等
进程的状态
三态模型:就绪、阻塞、运行
(资源分:CPU、非CPU)
1,有CPU也有非CPU 就是运行态
2、没有CPU有非CPU,就是就绪态
3、没有CPU没有非CPU,就是阻塞态
1、2之间可能因为时间片原因而相互转换
五态模型:
跟三态模型相比,却内存资源的时候,会挂起某个进程,挂起的过程是从内存放到磁盘的过程
在内存中就是活跃,在磁盘中就是静止
静止不能直接运行,而需要进入活跃状态才能运行
进程PV操作
互斥:相互排斥,相互竞争同一个资源,在某个时刻资源只能被一个进程占用(间接关系)
同步:速度有差异,为了某一事件而进行等待(直接关系)
临界资源:进行互斥的资源,竞争的资源
临界区:访问临界资源的代码(代码)
信号量S:是一种特殊的全局变量,结合PV操作的
P操作
S=S-1(申请并占用资源)
S<0(检查资源是否够用)
资源不够就阻塞进入进程队列
资源够了就向下执行
V操作
S=S+1(释放资源)
S<=0 (S表示互斥资源数,也表示排队数)
信号量取值范围(等待数---至S的初值)
(空间资源)
单缓冲区
多缓冲区
s0访问区是互斥信号量
s1\s2是同步信号量
标签:管理,程序,信号量,互斥,进程,CPU,资源 From: https://www.cnblogs.com/wumingliang/p/17653698.html