进 程

1. 什么是进程

进程是操作系统进程资源分配的基本单位,每一个正在运行的软件程序都对应着一个或多个进程。PCB是一个描述进程的结构体,操作系统中的PCB通过链表进行连接,对PCB的添加和删除也就是对进程的创建和消耗

2. PCB的重要属性

PCB中有多个属性,每个属性对应着进程的特性

2.1 PID

所谓PID是用来描述进程的属性,每一个PID有且仅对应着一个进程

2.2 内存指针

内存指针是 PCB 中用于确保操作系统能够准确管理进程内存资源的一组地址指针, 它的作用是操作系统知道进程的代码段、数据段、栈、堆等内存区域在哪里、有多大。

2.3 程序计数器 PC

cpu在执行进程中指令的时候,PC用来标记指令的位置,当前指令在哪下一条要执行哪个

2.4 文件描述符表

进程在运行过程中需要与文件进行交互,文件描述符表用于记录进程已打开的所有文件信息。当进程需要对某个文件执行 I/O 操作时,可通过文件描述符在文件描述符表中找到对应文件的相关信息,进而完成文件的读写等操作

2.5 进程状态

就绪状态 是指进程已具备运行条件,等待分配 CPU 资源;一旦获得 CPU 开始执行,就进入运行状态 ;若在运行过程中需要等待某事件(如 I/O 完成)而暂时无法继续执行,则进入阻塞状态

2.6 进程的优先级

对于需要立即响应、急需执行的进程,应赋予更高优先级;而对执行时机不敏感的进程,优先级则相对较低

2.7 进程上下文

进程上下文用于保存当前进程的执行现场信息。当多个进程以抢占式 方式竞争 CPU 时,当前进程可能执行到一半就被切换出去,此时需要通过保存进程上下文 来记录执行位置与相关状态,等该进程再次获得 CPU 后,便可恢复上下文,从断点处继续执行

2.8 进程记账信息

进程记账信息用于记录每个进程占用 CPU 的时间与执行次数。当发现某个进程获得的 CPU 时间远少于其他进程时,可依据记账信息为其适当分配更多 CPU 资源 ,从而实现 CPU 资源的公平、均衡分配

相关推荐
倔强的石头1061 小时前
【Linux指南】基础IO系列(八):实战衔接 —— 给微型 Shell 添加完整重定向功能
linux·运维·服务器
try2find1 小时前
打印ascii码报错问题
java·linux·前端
观北海1 小时前
AiScan-N:AI全自动化渗透测试工具的深度技术解析
运维·自动化
Ujimatsu2 小时前
虚拟机安装Ubuntu 26.04.x及其常用软件(2026.4)
linux·运维·ubuntu
冰暮流星2 小时前
javascript事件案例-全选框案例
服务器·前端·javascript
一直会游泳的小猫4 小时前
homebrew
linux·mac·工具·包管理
Agent产品评测局4 小时前
制造业生产调度自动化落地,完整步骤与避坑指南:2026企业级智能体选型与实战全景
运维·人工智能·ai·chatgpt·自动化
寒秋花开曾相惜4 小时前
(学习笔记)4.2 逻辑设计和硬件控制语言HCL(4.2.1 逻辑门&4.2.2 组合电路和HCL布尔表达式)
linux·网络·数据结构·笔记·学习·fpga开发
狂奔的sherry4 小时前
一次由 mount 引发的 Linux 文件系统“错觉”
linux·运维·服务器
志栋智能5 小时前
超自动化巡检:让合规与审计变得轻松简单
运维·网络·人工智能·自动化