导图
一、进程通信
1. 通信的概念
两个进程之间彼此交换信息就叫进程通信。
2. 进程通信机制
共享存储器系统 --> 相互通信的进程共享某些数据结构或共享存储区
消息传递系统 --> 进程间通过操作系统提供的一组通信程序传递消息
管道通信 --> 进程间通过管道(链接读写进程的特殊文件)进行信息通信
消息缓冲队列 --> 利用消息缓冲区、发送原语和接收原语实现信息通信
高级通信机制:共享存储器系统 、消息传递系统 、管道通信
二、线程
1. 线程的概念
线程是进程中的一个实体,是被系统独立调度和分派的基本单位。
线程只拥有在运行中必需的资源,包括程序计数器、一组寄存器和栈,但它可与同一进程的其他线程共享进程所拥有的全部资源。
2. 线程的分类
1)内核级线程----依赖于内核
2)用户级线程----不依赖于内核
3. 线程的3种状态
4. 线程控制块概念
每一个线程都由一个数据结构表示,包括它的基本状态等,这个数据结构就是线程控制块TCB。
TCB记录了操作系统需要的、用于描述线程情况及控制线程运行所需的全部信息
5. 进程和线程的关系,图解
6. 线程和进程的关系
1) 资源和调度。线程是程序执行的基本单位,进程是拥有资源的基本单位。
2) 地址空间资源。不同进程的地址空间是相互独立的,而同一进程中的各线程共享同一地址空间。
3) 通信关系。进程之间的通信必须使用操作系统提供的进程间通信机制,而同一进程中的各线程间可以通过直接通信。
4) 并发性。多进程之间可以并发执行,多线程之间也可以并发执行。
5) 系统开销。线程切换的开销比进程切换的开销小。
7. 线程的控制