进程概念
PCB(进程控制块)是进程存在的唯一标志。创建进程实质上是创建PCB,撤销进程实质上是撤销PCB。
进程实体(进程映像):由程序段(程序可被多个进程共享),相关数据段,PCB组成。
进程映像是静态的,进程是动态的。
进程的特征
- 动态性:进程最基本的特征
- 并发性
- 独立性:进程是系统进行资源分配和调度的基本单位。
- 异步性
- 结构性
进程的状态
- 运行状态
- 就绪状态
- 阻塞状态
- 创建状态
- 结束状态
一个进程由运行状态变为阻塞状态是一个主动的行为,以系统调用的形式请求操作系统提供服务。由阻塞状态变为运行状态则是被动的。
进程的通信
高级通信方式
- 共享存储
- 消息传递
- 管道通信
管道指用以连接一个读进程和一个写进程以实现它们之间通信的一个共享文件(字符流形式)。
管道机制需要实现三方面协调机制:互斥,同步,确定对方的存在。
管道读数据是一次性的,数据一旦被读就会被抛弃;半双工通信;写满才能读,读完才能写。
线程
线程是一个基本的CPU执行(调度)单元,进程是系统进行资源分配的基本单位。
同一进程中的多个线程共享进程所拥有的全部资源。
线程的实现方式
- 用户级线程
- 内核级线程
多线程模型
- 多对一模型:多个用户级线程(n)映射到一个内核级线程(m),线程管理在用户空间完成。
- 一对一模型
- 多对多模型:n>=m