🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 为什么需要进程 - 进程是系统进行资源分配和调度的基本单位 - 进程作为程序独立运行的载体保障程序正常执行 - 进程的存在使得操作系统资源的利用率大幅提升 ## 进程的实体 ### 主存中的进程形态 四大类 1. 进程标识符 2. 处理机状态 3. 进程调度信息 4. 进程控制信息 九小类 1. 标识符 标识符唯一标记一个进程,用于区别其他进程 2. 状态 标记进程的进程状态,如:运行态 3. 优先级 4. 程序计数器 进程即将被执行的下一条指令的地址 5. 内存指针 程序代码、进程数据相关指针 6. 上下文数据 进程执行时处理器存储的数据 7. IO状态信息 被进程|O操作所占用的文件列表 8. 记账信息 使用处理器时间、时钟数总和等 9. 进程与线程 ### 进程控制块(PCB) - 用于描述和控制进程运行的通用数据结构 - 记录进程当前状态和控制进程运行的全部信息 - PCB的使得进程是能够独立运行的基本单位 - PCB是操作系统进行调度经常会被读取的信息 - **PCB是常驻内存的**,存放在系统专门开辟的PCB区域內 ### 进程与线程 | | 进程 | 线程 | | --- | --- | --- | | 资源 | 资源分配的基本单位 | 不拥有资源 | | 调度 | 独立调度的基本单位 | 独立调度的最小单位 | | 系统开销 | 进程系统开销大 | 线程系统开销小 | | 通信 | 进程 IPC | 读写同一进程数据通信 | ### 线程 1. 线程是操作系统进行运行调度的**最小单位** 2. 包含在进程之中,是进程中实际运行工作的单位 3. 一个进程可以并发多个线程,每个线程执行不同的任务 4. 进程的线程**共享进程资源**