什么是进程控制块,进程控制块的作用
操作系统内的每个进程表示,釆用进程控制块(Process Control Block,PCB),也称为任务控制块。
图 1 进程控制块(PCB)
每个进程控制块如图 1 所示,它包含许多与当前进程相关的信息:
简而言之,PCB 简单地作为这些信息的仓库,这些信息随着进程的不同而不同。
图 1 进程控制块(PCB)
每个进程控制块如图 1 所示,它包含许多与当前进程相关的信息:
- 进程状态:状态可以包括新的、就绪、运行、等待、停止等。
- 程序计数器:计数器表示进程将要执行的下个指令的地址。
- CPU 寄存器:根据计算机体系结构的不同,寄存器的类型和数量也会不同。它们包括累加器、索引寄存器、堆栈指针、通用寄存器和其他条件码信息寄存器。在发生中断时,这些状态信息与程序计数器一起需要保存,以便进程以后能正确地继续执行。
- CPU 调度信息:这类信息包括进程优先级、调度队列的指针和其他调度参数。
- 内存管理信息:根据操作系统使用的内存系统,这类信息可以包括基地址和界限寄存器的值、页表或段表。
- 记账信息:这类信息包括 CPU 时间、实际使用时间、时间期限、记账数据、作业或进程数量等。
- I/O 状态信息:这类信息包括分配给进程的 I/O 设备列表、打开文件列表等。
简而言之,PCB 简单地作为这些信息的仓库,这些信息随着进程的不同而不同。
所有教程
- socket
- Python基础教程
- C#教程
- MySQL函数
- MySQL
- C语言入门
- C语言专题
- C语言编译器
- C语言编程实例
- GCC编译器
- 数据结构
- C语言项目案例
- C++教程
- OpenCV
- Qt教程
- Unity 3D教程
- UE4
- STL
- Redis
- Android教程
- JavaScript
- PHP
- Mybatis
- Spring Cloud
- Maven
- vi命令
- Spring Boot
- Spring MVC
- Hibernate
- Linux
- Linux命令
- Shell脚本
- Java教程
- 设计模式
- Spring
- Servlet
- Struts2
- Java Swing
- JSP教程
- CSS教程
- TensorFlow
- 区块链
- Go语言教程
- Docker
- 编程笔记
- 资源下载
- 关于我们
- 汇编语言
- 大数据
- 云计算
- VIP视频