进程管理及相关

进程的描述

1.进程的定义

· 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位

2.进程的特征

· 进程和程序是截然不同的两个概念,进程除了具有程序所没有的PCB结构外,还具有以下特征:
(1)动态性;(2)并发性;(3)独立性;(4)异步性

3.进程的基本状态及切换

(1)就绪(Ready)状态:进程已分配到除CPU外的所有资源,则按一定策略进入就绪队列(等待被调度)
(2)执行(Running)状态:进程已获得CPU,正在执行
(3)阻塞(Block)状态:正在执行的进程由于发生某事件(如I/O请求、申请缓冲区失败等)暂时无法继续执行,即为受阻,引起进程调度,OS把处理机分配给另一个就绪进程,将阻塞状态排入阻塞队列。(为了减少队列操作的开销,根据阻塞原因不同,设置多个阻塞队列)(等待资源)
· 就绪状态与执行状态的双向转换(执行状态在把分配给他的CPU时间片用完后会转为就绪状态等待下一次调度),而阻塞状态必须由执行状态转换而来,获得必要资源
(不包括CPU时间)后再转化为就绪状态

进程控制块(PCB)

· 所谓创建进程和撤销进程都是指对PCB的操作
· 进程控制块(Process Control Block,PCB)描述进程的基本信息和运行状态。
· PCB的作用:(1)作为独立运行基本单位的标志;(2)能实现间断性运行方式;(3)提供进程管理所需要的信息;(4)提供进程调度所需要的信息;(5)实现与其他进程的同步与通信
· 进程控制块中的信息:(1)进程标识符;(2)处理机状态(上下文,主要有处理机的各种寄存器中的内容组成);(3)进程调度信息;(4)进程控制信息

线程及其与进程的区别

· 【资源】一个进程中可以有多个线程,线程不拥有资源,线程可以访问隶属进程的资源
· 【调度】线程是独立调度的基本单位,在同一进程中,线程切换不会引起进程切换,跨进程切换线程会引起进程切换
· 【开销】创建或撤销进程时,系统都要为其分配或回收资源,付出的开销远大于创建或撤销线程时的开销。进程切换时,涉及当前执行进程的CPU环境的保存及调度新进程CPU环境的设置,而线程切换只需保存和设置少量寄存器内容,开销很小
· 【通信】进程间通信需要进程同步和互斥手段辅助,以保证数据一致,而线程可以通过直接读写同一进程中的数据段来进行通信

进程调度算法

1.批处理系统

· 该系统中调度算法目标:保证吞吐量和周转时间
(1)先来先服务(first-come first-served,FCFS)
(2)短作业优先(shortest job first,SJF)
(3)最短剩余时间优先(shortest remaining time next,SRTN)

2.交互式系统

· 该系统中调度算法目标:快速响应
(1)时间片轮转
(2)优先级调度
(3)多级反馈队列(结合1,2)

3.实时系统

(……)

进程同步

进程通信