【操作系统复习】进程控制

进程控制

  • 一、原语
      • 1.1 进程控制相关的原语
        • 1.1.1 进程的创建
        • 1.1.2 进程的终止
        • 1.1.3 进程的阻塞和唤醒
        • 1.1.4 进程的切换

💁 ​进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。

一、原语

用原语实现进程控制。原语的特点是执行期间不允许中断,只能一气呵成。

这种不可被中断的操作即原子操作

原语采用“关中断指令”和“开中断指令”实现

显然,关/开中断指令的权限非常大,必然只允许在核心态下执行的特权指令

1.1 进程控制相关的原语

  • 更新PCB中的信息(如修改进程状态,将运行环境保存到PCB、从PCB恢复运行环境)
    • 所有的进程控制原语一定都会修改进程状态标志
    • 剥夺当前运行进程的CPU使用权必然需要保存其运行环境
    • 某进程开始运行前必然要恢复其运行环境
  • 将PCB插入合适的队列
  • 分配/回收资源

1.1.1 进程的创建

在这里插入图片描述

1.1.2 进程的终止

在这里插入图片描述

1.1.3 进程的阻塞和唤醒

在这里插入图片描述

🎈 注意:阻塞和唤醒要成对出现

1.1.4 进程的切换

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/483603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mybatis postgresql insert后返回自增id

在使用mybatis postgresql&#xff0c;我们有时在插入数据时需要返回自增id的值&#xff0c;此时在插入时&#xff0c;可以按照以下例子来编写mapper文件 <insert id"insertUser"><selectKey resultType"int" order"AFTER" keyProper…

DeepMind 的新强化学习系统是迈向通用 AI 的一步吗?

来源&#xff1a;数据实战派作者&#xff1a;Ben Dickson这篇文章是我们对 AI 研究论文评论的一部分&#xff0c;这是一系列探索人工智能最新发现的文章。对于已经精通围棋、星际争霸 2 和其他游戏的深度强化学习模型来说&#xff0c;人工智能系统的主要挑战之一是它们无法将其…

linux的常用操作——vim和vi

1.vi和vim有什么区别&#xff1f; \qquadvi和vim都是文本编辑器&#xff0c;vim是从vi发展过来的。 2.vim的三种操作模式 &#xff08;1&#xff09;命令模式&#xff1a; \qquad打开文件之后&#xff0c;默认进入命令模式。 vim a.txt #打开a.txt文本&#xff0c;此时处于命…

第十届蓝桥杯 等差数列(Python)

题目&#xff1a; 思路&#xff1a; 1、给数组排序&#xff0c;求出两两之间的差值即公差&#xff0c;如果差值为0&#xff0c;直接返回n&#xff0c;否则进入第二步&#xff1b; 2、给差值数组排序&#xff0c;求出两两之间的最大公因数即公差 代码&#xff1a; def gcd(…

两种实现简单cp的方法

第一种&#xff1a;标准IO #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #define N 32 void mycp(const char * sour,const char * des); int main(int argc, const char *argv[])…

linux的常用操作——gcc

1.什么是gcc \qquadgcc是linux中的一款编译源代码的文本编译器 2.编译过程 \qquad比如对hello.c文件进行编译&#xff0c; \qquad首先&#xff0c;预处理器cpp对hello.c进行处理&#xff0c;cpp会把头文件展开&#xff0c;宏替换&#xff0c;注释去掉&#xff0c;经过cpp处理后…

LeetCode 678. 有效的括号字符串

传送门&#xff1a;https://leetcode-cn.com/problems/valid-parenthesis-string 题目描述&#xff1a; 给定一个只包含三种字符的字符串&#xff1a;&#xff08; &#xff0c;&#xff09; 和 *&#xff0c;写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下…

汪卫华院士:无序中找有序 复杂中寻规律

来源&#xff1a;中国科学报原文出处&#xff1a;《中国科学报》 (2021-10-11 第4版 综合)作者&#xff1a;汪卫华&#xff08;作者系中国科学院院士、松山湖材料实验室主任&#xff09;冰河时代为什么会周期性重复出现&#xff1f;是否有关于混沌和湍流系统更一般的数学描述&a…

霍金 | 哥德尔和物理学的终结

来源&#xff1a;爱思想转自&#xff1a;人机与认知实验室 作者&#xff1a;史蒂芬霍金 英国剑桥大学著名物理学家&#xff0c;现代最伟大的物理学家之一译者&#xff1a;凌高【感谢陈禹老师&#xff1a;"冯诺依曼说过&#xff0c;没有明确的概念&#xff0c;量得分析是毫…

BUAA_OO_第二单元作业总结

程序设计策略 第一次作业 第一次作业实现的是FAFS式傻瓜调度电梯&#xff0c;由于是第一次接触多线程&#xff0c;难度不是很大。在我的设计里&#xff0c;我借鉴了生产者消费者模式&#xff0c;设计了一个输入线程和一个电梯线程&#xff0c;控制器的设计使用了单例模式&#…

linux的常用操作——静态库

1.静态库的制作 1.1静态库的命名 \qquad静态库一律使用lib打头&#xff0c;静态库名为&#xff1a;lib静态库的名字.a。比如&#xff1a;libmylibrary.a&#xff0c;这里面lib和.a是必须要有的。使用nm命令可以查看静态库。 nm 静态库名1.2静态库的制作步骤 \qquad第一步&…

蓝桥杯 回文日期

模拟 n int(input())def check(x):m int(x[:2])d int(x[2:4])x int(x)if 1<m<12:if m 2:if (x%40 and x%100!0) or x%4000:if d<29:return Trueelse:return Falseelse: if d<28:return Trueelse:return Falseif m in [1,3,5,7,8,10,12]:if d<31:return Tr…

因果推断研究获2021诺贝尔经济学奖

来源&#xff1a;集智俱乐部 北京时间2021 年 10 月 11 日 17 时许&#xff0c;2021 年诺贝尔经济学奖&#xff0c;授予了三位经济学家——David Card因为对“对劳动经济学的实证研究贡献”而获得一半奖金&#xff0c;Joshua D. Angrist和Guido W. Imbens因“对因果关系分析的方…

Leetcode 82. Remove Duplicates from Sorted List II

利用一个虚拟头节点,和维护一个前置节点. # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val x # self.next Noneclass Solution:def deleteDuplicates(self, head: ListNode) -> ListNode:if not head o…

【计算机网络复习】1.1.1 概念、组成、功能和分类

概念、组成、功能和分类二、功能三、组成四、分类计算机网络&#xff1a;是一个将分散的、具有独立功能的计算机系统&#xff0c;通过通信设备与线路连接起来&#xff0c;由功能完善的软件实现资源共享和信息传递的系统。 计算机网络是互连的、自治的计算机集合。 互连 — 互…

linux的常用操作——共享库

1.共享库的命名规则 \qquad共享库&#xff0c;即动态库。库名&#xff1a; lib库名.so 2.共享库的制作 2.1生成与位置无关的.o文件 gcc -fpic -c filename.c -I 头文件路径2.2生成共享库 gcc -shared -o 共享库名 要打包的.o文件 -I 头文件路径2.3生成可执行文件 gcc file…

因果表征学习最新综述:连接因果科学和机器学习的桥梁

来源&#xff1a;集智俱乐部作者&#xff1a;蔡心宇审校&#xff1a;龚鹤扬、陆超超编辑&#xff1a;邓一雪论文题目&#xff1a;Towards Causal Representation Learning论文地址&#xff1a;https://arxiv.org/abs/2102.11107这篇名为Towards Causal Representation Learning…

【计算机网络复习】1.1.2 标准化工作及相关组织

标准化工作及相关组织一、标准化工作二、标准化工作的相关组织一、标准化工作 标准 法定标准&#xff1a;由权威机构指定的正式的、合法的标准&#xff08;如OSI&#xff09;事实标准&#xff1a;某些公司的产品在竞争中占据了主流&#xff0c;时间长了&#xff0c;这些产品中…

推荐几个练习听力不错的国外网站

http://www.uptoten.com/ 是美国针对学前教育&#xff08;0到10岁&#xff09;的听力网站&#xff0c;主题非常丰富&#xff0c;拥有大量英文歌曲、卡通片、绘画、游戏等栏目&#xff0c;启发儿童在艺术、健康、语言、社会、科学多元思维能力&#xff0c;在好玩又有趣的氛围下&…

linux的常用操作——程序调试gdb

1.如何在linux下调试程序&#xff1f; \qquad在进行程序编译时&#xff0c;如果需要调试&#xff0c;那么需要加入调试指令。 gcc filename.c -o 可执行文件名 -g\qquad对程序进行调试 gdb 可执行文件名2.调试的基础操作 \qquad在gdb的界面下的操作&#xff1a;查看 l #默认…