前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Linux 内核】进程管理 ( Linux 中进程的 CPU 资源调度 | 进程生命周期 | 创建状态 | 就绪状态 | 执行状态 | 阻塞状态 | 终止状态 | 进程生命周期之间的转换 )

【Linux 内核】进程管理 ( Linux 中进程的 CPU 资源调度 | 进程生命周期 | 创建状态 | 就绪状态 | 执行状态 | 阻塞状态 | 终止状态 | 进程生命周期之间的转换 )

作者头像
韩曙亮
发布2023-03-30 13:44:47
1.9K0
发布2023-03-30 13:44:47
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

一、Linux 中进程的 CPU 资源调度


Linux 操作系统 是 多任务系统 , 可以 同时运行多个进程 ;

CPU 资源被分成若干 时间片 , 每个进程分不同的时间 , 使用 CPU 时间片 , 这是 分时复用机制 ;

为 进程 分配 CPU 时间片 的机制 , 称为 " 进程调度策略 " ;

二、进程生命周期


进程 在 创建 , 以及 " CPU 时间片 " 调度 , 终止 时 , 会处于不同的状态 , 这些状态就是 进程的生命周期 :

  • 创建状态 : 进程 刚被创建时 , 处于创建状态 ;
  • 就绪状态 : 进程 已经 获取了 相关资源 , 以及 运行条件准备就绪 ;
  • 执行状态 : CPU 时间片被分配给了该进程 , 正在 CPU 中执行该进程 ;
  • 阻塞状态 : 等待被分配 CPU 时间片的过程 中 , 处于该状态 ;
  • 终止状态 : 进程 终止后的状态 ;

三、进程生命周期之间的转换


创建状态 : Linux 中 , 调用 fork() 函数 , 创建进程 , 此时进入 " 创建状态 " ;

创建状态 -> 就绪状态 : 创建状态 中 , 等待 进程运行的 资源准备完毕后 , 会进入 " 就绪状态 " ;

就绪状态 -> 执行状态 : 就绪状态时 , " 进程调度策略 " 为进程调度 " CPU 时间片 " , 进程一旦 获取到 CPU 时间片使用权 , 就立刻进入 " 执行状态 " , 开始执行后续指令 ;

执行状态 -> 就绪状态 : 如果当前 进程 处于 执行状态 , 正在执行 , 此时如果有一个 优先级高 的进程要执行 , 此时会抢占 CPU , 本进程就会重新进入 " 就绪状态 " ;

执行状态 -> 阻塞状态 : 如果当前 进程 处于 执行状态 , 正在执行 , 如果此时 进入 休眠等待队列 , 或者 等待资源 , 此时会进入到 " 阻塞状态 " ;

阻塞状态 -> 就绪状态 : 处于 " 阻塞状态 " 的进程 , 如果被 从休眠中唤醒 , 或者 等待的资源分配到位 , 此时就会进入到 " 就绪状态 " , 等待 CPU 时间片调度执行 ;

执行状态 -> 终止状态 : 进程 退出 , 或者被杀死 , 就会进入 " 终止状态 " ;

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、Linux 中进程的 CPU 资源调度
  • 二、进程生命周期
  • 三、进程生命周期之间的转换
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档