4 操作系统第二章 进程管理 进程控制、通信

文章目录

      • 1 进程控制
          • 1.1 进程控制
          • 1.2 进程控制实现
          • 1.3 进程创建
          • 1.4 进程终止
          • 1.5 进程阻塞与唤醒
          • 1.6 进程切换
          • 1.7 进程控制小结
      • 2 进程通信
          • 2.1 共享通信
          • 2.2 管道通信
          • 2.3 消息传递
          • 2.4 进程通信小结

1 进程控制

1.1 进程控制

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

简言之:进程控制就是要实现进程状态转换

1.2 进程控制实现

通过原语实现进程控制
在这里插入图片描述
NOTE:

  • 原语的执行具有“原子性”,必须一气呵成→借助开关中断指令实现
  • 为何进程控制(状态转 换)的过程要“一气呵成”?
    如果不能“一气呵成”,就有可能导致操作系统中的某些关键数据结构信息不统一的情况, 这会影响操作系统进行别的管理工作

在这里插入图片描述

CPU执行了关中断指令之后,就不再例行检查中断信号,直到执行开中断指令之后才会恢复检查。
这样,关中断、开中断之间的这些指令序列就是不可被中断的,这就实现了“原子性”。

原语操作:

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

在这里插入图片描述

1.4 进程终止

在这里插入图片描述

1.5 进程阻塞与唤醒

在这里插入图片描述

1.6 进程切换

在这里插入图片描述

程序运行与进程切换原理:
在这里插入图片描述

1.7 进程控制小结

在这里插入图片描述

2 进程通信

进程通信就是指进程之间的信息交换。

进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立。
在这里插入图片描述

2.1 共享通信

在这里插入图片描述

2.2 管道通信

“管道”是指用于连接读写进程的一个共享文件,又名pipe 文件。其实就是在内存中开辟一个大小固定的缓冲区

在这里插入图片描述

  1. 管道只能采用半双工通信,某一时间段内只能实现单向的传输。如果要实现双向同时通信,则需要设置 两个管道。
  2. 各进程要互斥地访问管道
  3. 数据以字符流的形式写入管道,当管道写满时,写进程的write()系统调用将被阻塞,等待读进程将数据取走。当读进程将数据全部取走后,管道变空,此时读进程的read()系统调用将被阻塞。
  4. 如果没写满,就不允许读。如果没读空,就不允许写。
  5. 数据一旦被读出,就从管道中被抛弃,这就意味着读进程最多只能有一个,否则可能会有读错数据的情况。
2.3 消息传递

进程间的数据交换以格式化的消息(Message)为单位。进程通过操作系统提供的“发送消息/接收消息”两个原语进行数据交换。

在这里插入图片描述

2.4 进程通信小结

在这里插入图片描述

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

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

相关文章

《Science》日本科学家利用干细胞诱导成功了大鼠生殖细胞

来源:生物通日本科学家利用干细胞来诱导生殖细胞,从而产生健康且可生育的后代。不久前,日本京都大学(Kyoto University)的研究人员在《细胞干细胞》(Cell Stem Cell)杂志上发表了一篇研究论文,称他们利用小鼠多能干细胞在试管中逐…

5 操作系统第二章 进程管理 线程介绍

文章目录1 什么是线程1.1 为什么要引入线程:1.2 线程定义1.3 线程与进程的比较1.4 线程的属性1.5 线程实现方式1.5.1 用户级线程(ULT)1.5.2 内核级线程(KLT,又称“内核支持的线程”)1.5.2 用户级线程、内核级线程二者组…

6 操作系统第二章 进程管理 处理机调度

文章目录1 处理机调度1.1 处理机调度概念1.2 处理机调度三大层次1.3 处理机三层调度的联系、对比1.4 处理机调度小结2 进程调度2.1 进程调度、进程切换时机2.2 进程调度方式2.3 进程的切换与过程2.4 进程切换与调度小结3 典型的调度算法3.1 先来先服务 FCFS3.2 短作业优先 SJF3…

如何通向“广义人工智能”?LSTM 提出者之一Sepp Hochreiter:将符号 AI 与神经 AI 相结合...

来源:AI科技评论作者:Sepp Hochreiter解读:Antonio编辑:陈彩娴人类包含意识、认知、决策等等在内的智慧能力,似乎从人类有记录的那一刻起,就吸引着无数哲学家的思索。与之类似,从AI诞生的那一刻…

德勤预判:2022技术七大趋势

来源:综合德勤公开平台公开发布信息整理编辑:邱峰、罗兵,张钦煜审核:张祥、吴斌、数字理政研究院、中通协大数据分会1、数据跨界共享更便捷:诸多新技术致力于在保护隐私的同时,简化组织内和组织间的数据共享…

7 操作系统第二章 进程管理 进程同步与互斥

文章目录1 进程同步与互斥1.1 进程同步1.2 进程互斥1.3 进程同步机制遵循的原则1.3 进程同步、互斥小结2 进程互斥实现方法2.1 互斥的软件实现方法2.1.1 单标志法2.1.2 双标志法先检查2.1.3 双标志法后检查2.1.4 Peterson算法2.1.5 互斥的软件实现方法小结2.2 互斥的硬件实现方…

8 操作系统第二章 进程管理 信号量 PV操作 用信号量机制实现 进程互斥、同 步、前驱关系

文章目录1 信号量机制1.1 整形信号量1.2 记录形信号量1.3 信号量机制小结2 用信号量机制实现进程互斥、同 步、前驱关系2.1 信号量机制实现进程互斥2.2 信号量机制实现进程同步2.3 信号量机制实现前驱关系2.4 信号量机制实现进程互斥、同 步、前驱关系小结1 信号量机制 用户进程…

一文掌握深度学习、神经网络和学习过程的历史

来源:算法与数学之美本质上,深度学习是一个新兴的时髦名称,衍生于一个已经存在了相当长一段时间的主题——神经网络。从20世纪40年代开始,深度学习发展迅速,直到现在。该领域取得了巨大的成功,深度学习广泛…

2022年后人工智能/深度学习八大应用方向

来源:电子工程专辑 人工智能、机器学习、深度学习已经成为当下最热门的前端科技之一。这三者其实是子-子集的关系。随着技术发展和应用的深入,深度学习越来越重要,成为AI的金字塔。本文总结了人工智能领域在2022年及以后数年内最热门的八大应…

多生产者-多消费者问题

文章目录1 问题描述2 问题分析3 代码实现4 分析总结1 问题描述 桌子上有一只盘子,每次只能向其中放入一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,儿子专等着吃盘子中的橘子,女儿专等着吃盘子中的苹果。只有盘子空时&am…

​Nat. Commun.速递:深度学习在计算生物学中的应用综述

来源:集智俱乐部作者:郭瑞东 审校:梁金 编辑:邓一雪摘要蛋白质结构预测是计算生物学中一个长达半个世纪的重大挑战,最近,深度学习在这方面取得了前所未有的进展。4月1日,一项发表在 Nature Comm…

吸烟者问题

文章目录1 问题描述2 问题分析3 代码实现:1 问题描述 假设一个系统有三个抽烟者进程和一个供应者进程。每个抽烟者不停地卷烟并抽掉它,但是要卷起并抽掉一支烟,抽烟者需要有三种材料:烟草、纸和胶水。三个抽烟者中,第一…

无人驾驶出租车遭警察拦截后欲“潜逃”,AI 是原罪?

整理:苏宓出品:CSDN(ID:CSDNnews)所谓开车在路上,最讨厌的有几种人,一是插自己队和不让自己插队的,二想必就是晚上开远光灯和不开灯的。在交通交规下且汽车正常行驶过程中&#xff0…

人工智能,装在罐子里

来源:学术头条作者:Rich Heimann“装在罐子里的大脑”(brain in a jar)是一项对脱离身体、生活在一罐食物中的人类大脑进行的思想实验。这个思维实验探索了人类对现实、心灵和意识的概念。本文将探讨一个反对人工智能(…

10 操作系统第二章 进程管理 死锁、死锁的处理策略 银行家算法

文章目录1 死锁1.1 死锁定义1.2 死锁、饥饿、死循环的区别1.3 死锁产生的必要条件1.4 什么时候会发生死锁1.5 死锁的处理策略1.6 死锁的概念小结2 死锁预防2.1 破坏互斥条件2.2 破坏不剥夺条件2.3 破坏请求和保持条件2.4 破坏循环等待条件2.5 预防死锁小结3 死锁避免3.1 安全序…

短期记忆容量必需有限

来源:CreateAMind介绍一篇论文:预测性大脑的短期记忆能力肯定是有限的短期保持信息的能力可能是人类认知的一个标志, 因为它是许多领域所需要的,如感知、行动计划和语言。没有大脑的这一核心功能,人类无法思考、推理或计算,甚至可能无法感知。尽管短期记…

读者-写者问题

文章目录1 问题描述2 问题分析3 代码实现1 问题描述 有读者和写者两组并发进程,共享一个文件,当两个或两个以上的读进程同时访问共享数据时不会产生副作用,但若某个写进程和其他进程(读进程或写进程)同时访问共享数据时…

9 操作系统第二章 进程管理 管程

文章目录1 管程1.1 为什么引入管程1.2 管程的定义和基本特征1.3 管程小结1 管程 1.1 为什么引入管程 产生原因:信号量机制存在的问题:编写程序困难、易出错 能不能设计一种机制,让程序员写程序是不需要再关注复杂的PV操作,使得代…

2021年世界科技进展100项

来源:三思派 作者:李万,钱娅妮1生命、生物、医药健康01新冠疫情1. 首次看清新冠患者体内蛋白质变化中国科学家分析出新冠肺炎死亡患者体内多器官组织样本中蛋白质分子病理全景图,相当于将医生在显微镜下看到的人体感染新冠病毒后细…

图灵奖获得者、信息安全常青树Adi Shamir:从密码学到AI对抗性样本研究|智源大会嘉宾风采...

来源:智源大会导读:RSA 算法是通信、金融产业中被广泛使用的安全基本机制,是信息时代的支柱技术。而在这个跨时代算法背后的设计者之一,正是密码学先驱 Adi Shamir。除了RSA 公钥密码算法以外,零知识证明、差分密码分析…