概念
PCB:系统为每个运行的程序分配一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息。PCB是进程存在的唯一标志 进程实体:由数据段、程序段、PCB构成 进程:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。进程强调动态性,进程实体强调静态性。
PCB组成
- 进程描述信息
- 进程控制管理信息
- 资源分配清单
- 处理机相关信息
PCB组织方式
链接方式
按照进程状态(执行/就绪/阻塞)将PCB分为多个队列,操作系统持有各个队列的指针。 通常来说优先级高的进程会排在就绪队列的更前面。
索引方式
根据进程状态建立几张索引表,操作系统持有指向各个索引表的指针。与链接方式类似,只不过存储结构有所变化。
进程的特征
- 动态性
- 并发性
- 独立性:独立运行、独立获得资源、独立接受调度
- 异步性:推进速度不可知
- 结构型:PCB
进程的状态和转化
三种基本状态
- 运行态:正在占用cpu运行
- 就绪态:可以运行,但是没分配到时间片
- 阻塞态:不可以运行,正在阻塞等待某一事件完成
其余两种状态
状态转化
进程控制
原语
进程控制是用原语实现的,因为原语的特点就是不能被中断。 原语采用关中断和开中断指令来实现,这两个指令权限非常大,只能在核心态下执行
进程通信
方式一:共享内存
共享内存又分为基于数据结构的共享和基于存储区的共享。基于数据结构的共享只能共享一个特定的数据结构,是一种低级的通信方式;基于存储区的共享能共享一片内存区域,是一种高级的通信方式
方式二:管道通信
管道是指用于连接读写进程的一个共享文件,又名pipe文件。其实就是内存中开辟一个大小固定的缓冲区。
方式三:消息传递
- 直接通信方式:消息直接挂到接受进程的消息缓冲队列上
- 间接通信方式:消息需要先发到中间实体(信箱),因此也称信箱通信方式
|