首页 > 其他分享 >软考笔记

软考笔记

时间:2023-03-30 15:44:07浏览次数:41  
标签:PV 软考 临界 笔记 信号量 原语 进程 操作

PV操作

与pv操作相关的几个概念

1.临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机,磁带机等。

2.临界区:每个进程中访问临界资源的那段代码称为临界区。

3.信号量:是一种特殊的变量,符号为s,只用于pv操作

 

用PV操作来管理共享资源时,首先要确保PV操作自身执行的正确性。由于P(S)和V(S)都是在同一个信号量S上操作,为了使得它们在执行时不发生因交叉访问信号量S而可能出现的错误,约定P(S)和V(S)必须是两个不可被中断的过程,即让它们在屏蔽中断下执行。把不可被中断的过程称为原语。于是,P操作和V操作实际上应该是P操作原语和V操作原语。
P操作的主要动作是:
①S减1;
②若S减1后仍大于或等于0,则进程继续执行;
③若S减1后小于0,则该进程被阻塞后放入等待该信号量的等待队列中,然后转进程调度。
V操作的主要动作是:
①S加1;
②若相加后结果大于0,则进程继续执行;
③若相加后结果小于或等于0,则从该信号的等待队列中释放一个等待进程,然后再返回原进程继续执行或转进程调度。
PV操作对于每一个进程来说,都只能进行一次,而且必须成对使用。在PV原语执行期间不允许有中断发生。原语不能被中断执行,因为原语对变量的操作过程如果被打断,可能会去运行另一个对同一变量的操作过程,从而出现临界段问题。如果能够找到一种解决临界段问题的元方法,就可以实现对共享变量操作的原子性。

 

 

**

标签:PV,软考,临界,笔记,信号量,原语,进程,操作
From: https://www.cnblogs.com/htj10/p/17272988.html

相关文章

  • Git学习笔记
    《Git学习笔记》一、词汇概念说明Git的用途Git是目前世界上最先进的分布式版本控制系统(没有之一)。其实就是用来管理文件内容变动的一个工具,即一个可下载安装的软件程序......
  • ORB_SLAM3源码阅读笔记(一)
    本文参考赵旭辉博士的ORB_SLAM3源码阅读记录以及自己的源码阅读进行随笔记录,详细内容可参考链接一、结构  算法整体上需要关注的是三个线程,阅读源码的过程中也始终以这......
  • VUE3基础笔记
    date:2023-3-3010:00:00categories:-前端系列tags:-VUEtitle:VUE3基础笔记视频地址:2022最新Vue零基础小白入门教程,从入门到精通,快速上手简单易懂_哔哩哔哩_b......
  • Django笔记十一之外键查询优化select_related和prefetch_related
    本篇笔记目录如下:select_relatedprefetch_related在介绍select_related和prefetch_related这两个函数前,我们先来看一个例子。对于,Entry和Blog这两个model,前......
  • Python官方文档学习笔记
    原文:https://docs.python.org/3/tutorial/introduction.html版本:3.11.2UsingPythonasaCalculatorNumbersDivision(/)alwaysreturnsafloat.Todofloordivi......
  • 阅读笔记2
    《构建之法》第二章讲的是个人的技术和流程,第二章首先看到的是让我很找不到头绪的,单元测试,不知道怎么去测试,不知道测试有什意思。为什么要测试,程序写好了运行一下能运行一......
  • [Request对象] 笔记
    Servlet的继承体系Tomcat需要解析请求数据,封装为request对象,并且创建request对象传递到service方法中使用request对象,查阅JavaEEAPI文档的HttpServletRequest接口re......
  • 分布式学习笔记-zookeeper以及kafka
    zookeeper所谓分布式系统就是在不同的地域分布的多个服务器,共同组成一个应用系统来为用户提供服务,在分布式系统中最重要的是进程调度。多个进程的应用需要竞争资源,此时需要......
  • 【算法】笔记
    初心:最开始出发的原因论文的代码复现也就是算法及其实现,需要精通算法学习完算法的基础知识,大致了解什么是算法以及有哪些算法目标拆分采用28法则分析事物的本质,......
  • JDBC--宋红康老师讲解版本笔记
    第1章:JDBC概述1.1数据的持久化持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到......