进程与线程
①进程
进程是资源分配的基本单位,进程控制块(PCB)描述进程的基本信息和运行状态,进程的创建、撤销都是对PCB的操作。
进程可以并发执行。
②线程
线程是独立调度的基本单位。
一个进程可以由多个线程,共享进程资源。
区别
①拥有资源:进程是资源分配的基本单位,线程不拥有资源,可以访问进程的资源。
②调度:线程是独立调度的基本单位。
③系统开销:由于进程的创建和撤销时,系统都要为之分配、回收资源,所付出的开销远大于线程创建、撤销任务。进程切换时涉及到当前CPU状态的保存和新进程CPU环境的设置,而线程切换只需要保存、设置少量寄存器内容,开销小。
④通信:线程通信可以通过读写同一进程的数据进行通信,但进程通信需要借助IPC。
进程状态
①就绪状态:等待被调度
②运行状态
③阻塞状态:等待资源
注:①只有就绪态和运行态可以双向转换,其余都是单向。
即就绪状态当被调度时变为运行状态;运行状态中CPU时间片使用完后会变为就绪态。
②阻塞状态是当运行状态缺少所需资源时,变为阻塞(如I/O)