(五)进程管理:进程的状态与控制
文章目录
- 一、进程的状态
- 二、进程控制
- 1. 进程控制的原语
- 2. 挂起与激活
一、进程的状态
进程的生命周期:从创建到终止的过程
进程的三种基本状态
- 就绪(Ready)
- 可运行而未运行的状态,进程已经分配到除了处理机外的所有资源,等待执行权
- 在执行状态时间片用完也会进入到就绪状态
- 执行(Running)
- 进程从就绪状态获取到了处理机的执行权就会开始执行(进程调度)
- 阻塞(Blocked)
- 执行状态的进程进行I/O操作时就会进入阻塞状态(I/O和计算是由两套设备负责处理,DMA和CPU)
- 进程同步、通信、申请缓存等其他操作也会导致进程阻塞
进程的创建和终止状态
- 创建(New)
- 操作系统将应用从磁盘读取到内存,将整个进程的结构加载进来,最后将进程加到就绪队列等待执行
- 终止(Terminated)
- 进程执行完成,发出终止命令,操作系统将当前进程标记为已终止,资源释放和回收,在内存清除进程的PCB
二、进程控制
1. 进程控制的原语
即OS对进程实现有效的管理,包括创建新进程、撤销已有进程、挂起、阻塞和唤醒、进程切换等多种操作。OS通过原语(Primitive)操作实现进程控制。
- 原语的概念
- 由若干条指令组成,完成特定的功能,是一种原子操作(Action Operation)
- 原语的特点
- 原子操作,要么全做,要么全不做,执行过程不会被中断
- 在管态/系统态/内核态下执行,常驻内存
- 是内核三大支撑功能(中断处理、时钟管理、原语操作)之一
- 进程控制相关原语
- 创建原语:create
- 用户登录
- 作业调度
- 提供服务
- 应用请求
- 阻塞原语:block
- 请求某种服务
- 启动某种操作
- 数据未达到
- 无工作可做
- 唤醒原语:wakeup
- 撤销原语:destory
- 正常结束
- 异常结束
- 外界干预
2. 挂起与激活
为了系统和用户观察和分析进程(方便debug)
- 挂起原语:suspend
- 静止就绪:放外存,不调度
- 静止阻塞:等待事件
- 激活原语:active
- 活动就绪:等待调度
- 活动阻塞:等待唤醒
挂起将程序从内存拷贝到外存进行挂起操作
激活将程序从外存拷贝回内存进行激活
(五)进程管理:进程的状态与控制相关推荐
- Linux实用操作:小技巧(快捷键)、软件安装、systemctl、软连接、日期时区、IP地址、主机名、网络传输、端口、进程管理、主机状态、环境变量、上传、下载、压缩和解压
版本说明 当前版本号[20230415]. 版本 修改说明 20230415 初版 本课程的笔记已经更新完毕,各位可以通过点击黑马程序员2023年新版Linux零基础快速入门到精通>学习笔记总目 ...
- 面试-操作系统-进程管理-进程-进程调度-死锁
文章目录 ==概念== 备注 简单说下你对并发和并行的理解? 同步.异步.阻塞.非阻塞的概念? 操作系统概念? 一个程序从开始运行到结束的完整过程,你能说出来多少? 用户态和内核态是如何切换的? 什么 ...
- 4 操作系统第二章 进程管理 进程控制、通信
文章目录 1 进程控制 1.1 进程控制 1.2 进程控制实现 1.3 进程创建 1.4 进程终止 1.5 进程阻塞与唤醒 1.6 进程切换 1.7 进程控制小结 2 进程通信 2.1 共享通信 2. ...
- 3 操作系统第二章 进程管理 进程定义、特征、组织、状态与转换
文章目录 1 进程的定义和特征 2 进程的组织 3 进程的状态与转换 3.1 进程的状态 3.2 进程状态转换 1 进程的定义和特征 引入进程的原因 为了使程序能够并发执行,并且可以对并发执行的程序加 ...
- 进程管理—进程描述符(task_struct)
本文章转载自:http://blog.csdn.net/qq_26768741/article/details/54348586?locationNum=4&fps=1 前言 当把一个程序加载 ...
- Linux:进程管理 | 进程创建 | 进程终止 | 进程等待 | 进程替换
文章目录 进程创建 fork 写时拷贝机制 进程终止 退出码 进程退出方法 进程等待 阻塞.非阻塞的等待 进程替换 替换函数 exec l exec lp exec le exec ve exec v ...
- linux进程管理——进程管理相关命令
linux系统上与进程有关的命令: 查看类命令: ps,pstree,pidof,pgrep\pkill,top,htop,glances,dstat,vmstat,pmap 管理类命令: bg,fg ...
- 【Linux 内核】进程管理 ( 进程相关系统调用源码分析 | fork() 源码 | vfork() 源码 | clone() 源码 | _do_fork() 源码 | do_fork() 源码 )
文章目录 一.fork 系统调用源码 二.vfork 系统调用源码 三.clone 系统调用源码 四._do_fork 函数源码 五.do_fork 函数源码 Linux 进程相关 " 系统 ...
- 【Linux 内核】进程管理 ( 进程特殊形式 | 内核线程 | 用户线程 | C 标准库与 Linux 内核中进程相关概念 | Linux 查看进程命令及输出字段解析 )
文章目录 一.进程特殊形式 ( 内核线程 | 用户线程 ) 二.C 标准库与 Linux 内核中进程相关概念 三.Linux 查看进程命令及输出字段解析 一.进程特殊形式 ( 内核线程 | 用户线程 ...
- 【Linux 内核】进程管理 ( 进程与操作系统 | 进程与程序 | 进程与线程 | 虚拟地址空间 )
文章目录 一.进程与操作系统 二.进程与程序 三.进程与线程 四.虚拟地址空间 一.进程与操作系统 操作系统与硬件的关系 : 操作系统 使用 硬件 提供的资源 , 如 CPU , 内存 , 磁盘 , ...
最新文章
- 各浏览器中for in顺序的差异
- “个人核心竞争力”与“危机感”
- QT的QStackedWidget类的使用
- 显卡直通_英伟达RTX 30系显卡发布:性价比打哭2080Ti
- gwas snp 和_eQTL和GWAS还可以这样玩
- 如何在win64位下搭载汇编环境?DOSbox教程之debug怎么使用?
- 字节面试官:javaword转pdf乱码
- 矩阵的特征值与特征向量 求解
- 阿里云物联网平台如何进行云产品流转
- 参照系(参考系)与参照物的区别
- Android进阶之路——Flurry的使用
- 乐行科技获1.08亿元A轮融资,并推出艾特好车 1
- 怎么更改锁定计算机背景图片,电脑锁屏背景图片如何更改
- 用SendMessage/PostMessage发送WM_SIZE消息
- centos安装easy_install
- VLAN 的作用及access端口类型、trunk端口类型、hybrid端口类型之间的特性
- python之百度贴吧自动签到
- vscode双击选择连字符
- 机器学习系列思维导图
- 【光学】基于matlab模拟双孔干涉附matlab代码
热门文章
- luogu P4390 [BOI2007]Mokia 摩基亚
- 软通python编程题_软通动力笔试(带参考答案)
- 使用CSS画一个三角形
- webpack 降级
- Desktop Central 应用规范报告—如何利用BYOD(二)
- 企业级BYOD实践与挑战:如何改善BYOD策略
- VariantsTransport_SAP刘梦_新浪博客
- SAP通过事件触发后台JOB_SAP刘梦_新浪博客
- 行业研究报告-全球与中国PH/ORP变送器市场现状及未来发展趋势
- 享受知识饕餮盛宴,尽在2014年课程