一、进程
1.进程的描述
进程可以理解为程序的一次执行,也可以理解为程序运行的一个实例。
进程是分配资源的基本单位
一个进程由三部分组成:进程控制块PCB(Process Control Block),有关程序段,该程序段对其操作的数据结构集。
进程到底是什么样子呢?不妨让我们打开任务管理器。
这样我们不仅仅看到了每个正在运行的进程的名称,在详细信息里还能看到了进程分配的内存空间,pid等属性。
2. 进程控制块PCB
进程的PCB是系统感知进程的唯一实体。
所以说到底,对进程进行操作,也可以理解为对PCB进行操作。
PCB是要常驻内存的。
所以在创建进程的时候,就是分配一个PCB,里面记录了进程的各种信息,这些信息都包括:
- 描述信息:进程的标识号、用户标识号、家族关系
- 控制信息:进程当前状态、进程优先级、程序开始地址、计时信息、通信信息
- 资源管理信息:管理内存数据结构的指针、文件系统的指针等包括存储器的信息,IO设备、文件系统的信息。
- CPU现场保护结构:各个寄存器的内容
2.1 PCB的组织方式
一般来说,系统把所有PCB组织在一起,并把他们放在内存的固定区域,构成PCB表。
PCB表的大小决定了系统中最多可同时存在的进程的个数。
① 链接方式:把具有同一状态的PCB,链接成一个队列,这样可以形成若干就绪队列、阻塞队列和空白队列等,优先级高的进程的PCB排在前面。
② 索引方式:系统根