进程的基本概念

2022-05-10 08:54:38 浏览数 (3)

定义

在引入多道程序之后,计算机可以同时处理多个程序,那么问题来了,那么多个程序,操作系统要怎么才能找到各程序的存放位置呢?

于是就引入了一个概念:PCB

PCB 就是进程控制块,它用来描述进程的各种信息。

进程实体由 PCB、程序段、数据段组成。

我们所说的创建一个进程其实就是创建一个 PCB。

PCB 是进程存在的唯一标志。

  • 注意进程和进程实体的区别:进程是程序的一次执行过程,是动态的,而进程实体是静态的。
  • 进程标识符 PID 是进程创建时系统自动分配的唯一 ID。
  • 和进程管理相关的信息都保存在 PCB 中。

进程的状态

进程有 3 种状态:

  • 在单核处理机下,每一时刻最多只有一个进程处于运行态;

进程状态的切换

阻塞态就绪态 是一种被动行为,不是进程自己能控制的。

运行态阻塞态 是一种主动行为,进程主动请求系统调用。

进程控制

进程控制就是要实现进程状态转换,通过 原语 实现。

原语的特点是

  • 不允许中断,只能一气呵成,是一种原子操作;
  • 运行在核心态。

无论哪个原语,要做的无非三类事情

  • 更新 PCB 中的信息;
  • 将 PCB 插入合适的队列;
  • 分配回收资源。

进程通信

共享存储、管道通信、消息传递。

管道通信:管道是指用于连接读写进程的一个共享文件,又名 pipe 文件。其实就是在内存中开辟一个大小固定的 缓冲区

消息传递:进程间的数据交换以 格式化的消息 (如报文)为单位,进程通过操作系统提供的 “发送消息、接收消息” 两个原语进行数据交换。

0 人点赞