首页 > 代码库 > CentOS lujing
CentOS lujing
本章要点:
基础:进程描述及控制
策略:进程调度
实现:互斥与同步
避免:死锁与饥饿
进程定义:
可并发执行的程序,在一个数据集合上的运行过程;
申请/拥有资源的最小单位;
程序定义:静态概念,是指令和数据的集合,可长期存储;
进程与程序对应关系:
一个程序可以对应一个进程或者多个进程;
一个进程可以对应一个程序,或者一段程序;
进程的特征:
1、动态性;
2、并发性;
3、独立性;
4、异步性;
引入进程带来的问题:
增加了空间开销:为进程建立数据结构,
额外的时间开销:管理和协调、跟踪、填写和更新有关数据结构、切换进程、保护现场;
更难控制:
协调多个进程竞争和共享资源如何预防;
解决多个进程因为竞争资源而出现故障
处理机的竞争尤为突出;
进程的结构:
组成:程序、数据集合、进程控制块PCB(Process Control Block)
PCB是进程存在的唯一标志,创建进程时,创建PCB,进程结束时,系统将撤销其PCB;
PCB:
进程标识信息:进程的内部和外部标识符;
处理机状态信息:通常寄存器值,指令计数器值、程序状态字PSW值,用户栈指针值;
进程调度信息:进程状态,进程优先权,进程调度的其他信息;
其他信息:程序及数据地址、进程同步和通讯机制、资源清单、链接指针;
PCB的组织方式之一-------单一队列
所有进程的PCB通过链表组织成为一个队列。适用于进程数目不多的系统。如:windows操作系统;
PCB的组织方式二---------表格结构
PCB按进程状态不同,组织成不同的表格:就绪进程表。执行进程表(多处理机系统中)及阻塞进程表;
系统分别记载各PCB表的起始地址;