java控制进程_⑨进程控制
什么是进程控制?(实现进程状态转换)
进程控制的主要给你拿是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态装换等功能。
思考:如果将一个进程从一个队列放入到另一个队列,但是并没有改变进程PCB的状态标 志,那么就有可能导致系统错误。因为PCB所处的队列和当前PCB的状态标志位数 据不一致。为防止这类问题:用原语实现进程控制(原语运行在核心态)
原语的特点是执行期间不允许中断,只能一气呵成
这种不可被中断的操作即原子操作
原语采用“关中断指令”和“开中断指令”实现一气呵成(一气呵成是指将一个进程从一个队列放入到另一个队列,并且同时保证PCB的数据也被修改)
执行了关中断指令之后,如果此时收到外部中断信号,则此时的外部中断信号会被忽略,暂时不会被处理。保证了原语的一系列处理不会被中断。
之后执行了开中断指令之后,这是收到外部中断信号,才会转入到相应的中断处理程序开始处理。
显然,开/关中断指令的权限非常大,必然是指允许在核心态下执行的特权指令
进程控制相关的原语:
无论哪个原语,无非就是要做三类事情:
1.更新PCB中的信息(如修改进程状态标志、将运行环境保存到PCB、从PCB恢复运行环 境)
a.所有的进程控制原语一定都会修改进程状态标志
b.剥夺当前运行进程的CPU使用权必然需要保存其运行环境
c.某进程开始运行前
2.将PCB插入合适的队列
3.分配/回收资源
创建原语
撤销原语
阻塞原语和唤醒原语
切换原语:
总结:
java控制进程_⑨进程控制相关推荐
- potplayer 多个进程_进程组、会话、控制终端概念,如何创建守护进程?
守护进程 概念: 守护进程,也就是通常所说的Daemon进程,是Linux中的后台服务进程.周期性的执行某种任务或等待处理某些发生的事件. Linux系统有很多守护进程,大多数服务都是用守护进程实现的 ...
- 10taskkill无法终止进程_?进程的状态转换
一.进程的状态和转换 1.1进程的三态模型 按进程在执行过程中的不同情况至少要定义三种状态: 运行(running)态:进程占有处理器正在运行的状态. 进程已获得CPU,其程序正在执行.在单处理机系统 ...
- vmware-vmx.exe无法结束进程_?进程的状态转换
一.进程的状态和转换 1.1进程的三态模型 按进程在执行过程中的不同情况至少要定义三种状态: 运行(running)态:进程占有处理器正在运行的状态. 进程已获得CPU,其程序正在执行.在单处理机系统 ...
- python僵尸进程和孤儿进程_进程3.0——进程状态与僵尸进程、孤儿进程
进程3.0--进程状态与僵尸进程.孤儿进程 进程状态 一个进程的生命周期可以划分为一组状态,这些状态刻画了整个进程.进程状态即体现一个进程的生命状态 一般来说,进程有五种状态:创建状态:进程在创建时需 ...
- 协程 进程_进程,线程,协程的关系
对于很多WEB服务器的开发人员,编程前几年大多以实现业务代码为主,很少接触或者系统的学习服务器的进程,线程,协成的概念和应用,下面我就进程,线程,协成在Nginx服务器中的应用对比浅析: 关系图: 概 ...
- JAVA语言语法_流程控制(part3)
文章目录 JAVA语言语法 三.流程控制 1.程序流程控制概述 2.顺序结构 3.分支结构 4.分支结构语句练习 5.加深键盘类Scanner类的使用 6.分支结构语句练习2 7.分支结构&s ...
- Java并发篇_进程线程
一个进程包括由操作系统分配的内存空间,包含一个或多个线程.一个线程不能独立的存在,它必须是进程的一部分.一个进程一直运行,直到所有的非守护线程都结束运行后才能结束. 多线程能满足程序员编写高效率的程序 ...
- JAVA电机控制程序_步进电机控制时序
在使用Microchip TCP / IP堆栈时,我对步进电机控制有疑问 . 在过去,我使用计时器进行步进电机控制 . 我将定时器的周期设置为脉冲之间所需的时间,然后根据需要在定时器标记ISR中更改电 ...
- supervisor 守护多个进程_进程管理工具之Supervisor
相关介绍 Supervisor是用Python 开发的一个client/server服务,是 Linux /Unix系统下的一个进程管理工具,不支持Windows系统.它可以很方便的监听.启动.停止. ...
最新文章
- Posted content type isn't multipart/form-data
- 硬盘出现坏道后的修复技巧
- 泰信通获得正唐资本首轮投资,加速进军SDN、云网市场
- Matlab | matpower5.0:最优潮流执行步骤
- CF1167F. Scalar Queries
- 如何配置Apache虚拟主机?(基于IP、基于端口、基于域名)
- 转:用ASP.NET创建网络相册
- Axure经典案例下载(crm需求文档+web端交互组件+Axure移动端模板+管理后台框架模板)
- unity---------------------关于BuildAssetBundles的使用(打包)
- 2018 AI趋势:AI芯片更丰富,用机器学习的企业翻倍 | 德勤报告
- OpenCV之线性混合操作
- java 多线程 6 : 同步锁(Lock)
- 思科模拟器CiscoPacketTracer下载
- LG 的数学计划 ---- 第三步 欧几里得算法和扩展欧几里得
- 数26个大写字母里带圈的字母个数
- 实例解剖一个牛 B 的融资 PPT
- 提示BeanPostProcessorChecker:is not eligible for getting processed by all BeanPostProcessors的原因
- 华师新生研讨课 课后心得004
- 基于C90标准的C语言开发工具
- 监控摄像头的测试方法