进 程

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 资源的公平、均衡分配

相关推荐
xh didida1 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++
心易行者2 小时前
Agent应用+API端点商业化进阶实战:从单体智能体到可付费调用的API全流程
运维·服务器·人工智能·python·apache
科技研学社2 小时前
精度决胜品质:羽绒服缝制工艺标准与自动化精度对标解析
运维·自动化
夜之眷属2 小时前
Core dump 崩溃排查:JVM 宕机后,那份 core 文件怎么用 gdb 还原现场
java·运维·服务器·jvm
Initialize293082 小时前
Redis 内存打满、连接数飙红?运维排查四步法
运维
zly35002 小时前
centos7 mount设备挂载 /dev/sda1/硬盘挂载
linux·运维·服务器
零基础1232 小时前
FinalShell 使用教程:从安装到高效运维
运维·经验分享·笔记·finalshell
帷幕落秋2 小时前
Docker的两种安装
运维·docker·容器
工业一体机老司机2 小时前
工业一体机选购后的系统部署:Ubuntu下Docker容器化运行与GPIO配置
linux·ubuntu·docker·人机交互