操作系统简单总结——进程简介
什么是进程
进程:程序在一个数据集上的一次执行过程。
进程和程序的区别:
举个例子,在你电脑里是可以运行两个QQ的,装在电脑里的QQ程序可以被多次执行,每次打开一个新的QQ,会根据不同的用户使用不同的用户的数据。
进程组成:
进程状态
进程的五状态模型:
进程描述
首先要了解一下操作系统的控制结构,在操作系统里会构造并维护所管理的每个实体的信息表。这里的实体就是内存,各种I/O设备,文件,还有个进程。在操作系统简介这里讲了关于OS管理的对象。
信息表分4类:
说到这些信息表,那么我觉得大家应该能想到,在后面的关于OS进行管理,实际上就是根据这些表来进行管理。具体OS是怎么实现这些数据结构的,有时间一定要阅读一些LINUX内核源码,看看是怎么存储管理这些表的。
进程的控制结构PCB
OS进程表中包含所有进程的PCB,当一个新进程创建,OS会分配PCB给该进程。
每一个状态的进程都会对应一条进程队列。相同状态的PCB组成一个队列。阻塞队列会因为阻塞原因的不同而分不同的阻塞队列。
进程控制
进程控制这里,主要是涉及CPU的执行模式。特权指令时只能由操作系统内核使用的指令。
当CPU要执行特权指令时,会引发“trap陷入”,即模式切换(就是把PSW中的控制位调整),然后才能去执行OS内核的一段特权代码。
关于是怎么执行特权指令的,可以点击这里看看模式切换