信号量(semaphore)和班长(monitor)的区别

Semaphore和Monitor的主要区别在于,Semaphore是执行wait()和signal()操作的整数变量,而Monitor是一种抽象数据类型,一次只允许一个进程使用共享资源。...

Semaphore和Monitor的主要区别在于,Semaphore是执行wait()和signal()操作的整数变量,而Monitor是一种抽象数据类型,一次只允许一个进程使用共享资源。

通常,多个进程在一个操作系统上运行。当许多进程访问共享资源时,可能会导致争用情况。因此,有必要同步这些进程。信号量和监视器是实现进程同步的两种方法。

覆盖的关键领域

1.信号量定义,功能2.什么是监视器定义,功能3.信号量和监视器之间的区别-关键差异比较

关键术语

监视器,信号灯

信号量(semaphore)和班长(monitor)的区别

什么是信号量(semaphore)?

信号量是一个整数变量。原子操作wait()和signal()有助于修改信号量的值。当一个进程修改信号量时,另一个进程不能同时修改它。

信号量(semaphore)和班长(monitor)的区别

有两种类型的信号量。二进制信号量可以有两个整数值:0和1。关键部分是访问共享变量或共享资源的代码段。当进程需要访问临界区时,它执行wait()操作并将信号量值从1减小到0。退出临界区后,它执行signal()操作并将信号量值增大回1。

计数信号量可以有多个值。当进程需要进入临界区时,它执行wait()。然后,信号量值递减1。在退出临界段后,它执行signal()操作。然后,信号量值增加1。

在这两种情况下,如果信号量值为0,则所有资源都在使用中。因此,进程将执行wait(),直到当前运行的进程释放资源,并且信号量值变为大于0。

什么是班长(monitor)?

监视器是一种抽象数据类型。它包含共享数据变量和操作共享变量的一组过程。

进程不能直接访问监视器中的共享变量。相反,进程必须通过监视器中定义的过程来访问它。一次只能有一个进程访问监视器中的共享变量。换句话说,一次只有一个进程处于活动状态。同样,监视器有助于保持数据的一致性。如果另一个进程需要访问共享变量,它必须在队列中等待,直到上一个进程释放它。

此外,监视器中还有条件变量。这些允许进程在监视器内等待,并在上一个进程释放资源时继续。

信号量(semaphore)和班长(monitor)的区别

定义

信号量是一个变量,用于控制并发系统中的多个进程(如多任务操作系统)对公共资源的访问。相反,monitor是一个同步构造,允许线程同时具有互斥和等待(块)某个条件成为真的能力。因此,这是信号量和监视器的主要区别。

类型

信号量和监视器之间的另一个区别是,信号量是一个整数变量,而监视器是一个抽象数据类型。

条件变量

此外,信号量中没有条件变量概念,而监视器则有条件变量。

访问

当进程需要访问信号量时,它会在释放资源时执行wait()和signal()。另一方面,进程使用过程访问监视器中的共享变量。因此,这也是信号量和监视器之间的区别。

结论

在breif中,信号量和监视器是同步进程的两种方法。信号量和监视器之间的主要区别在于,信号量是执行wait()和signal()操作的整数变量,而监视器是一种抽象数据类型,一次只允许一个进程使用共享资源。

引用

1“信号量(编程)”,维基百科,维基媒体基金会,2019年5月1日,可在这里。2,“监视器(同步)”,维基百科,维基媒体基金会,19,2019,在这里可用。 2、“监视器(同步)”,维基百科,维基媒体基金会,19月2019日,

  • 发表于 2021-07-01 22:09
  • 阅读 ( 596 )
  • 分类:IT

你可能感兴趣的文章

5个最好的婴儿监视器,如果你关心评论

... Baby Monitor, VAVA 720P 5" HD Display Video Baby Monitor with Camera and Audio, IPS Screen, 900ft Range, 4500 mAh Battery, Two-Way Audio, One-Click Zoom, Night Vision and Thermal Monitor BUY NOW ON AMAZON ...

  • 发布于 2021-03-19 22:49
  • 阅读 ( 386 )

询问htg:增加wi-fi连接,校准显示器,以及进行基于计算机的恶作剧

...aphy, I’m hearing more and more about the importance of calibrating your monitor. I’m not exactly sure what this calibration entails. What do I need to do? Do I need tools or can I use the monitor itself to get the job done? Sincerely, Monitor Gazing 亲爱的班长, 显示器校准的目...

  • 发布于 2021-04-12 11:56
  • 阅读 ( 133 )

salesforce表示已经对rnc采取了行动,但不愿透露具体行动方式

...动。第二天,另一个电子邮件服务——竞选班长(Campaign Monitor)——暂停了特朗普竞选团队的账户。单凭这一点,竞选活动筹集资金的难度就会加大。 在华盛顿发生袭击事件后,社交媒体平台也在对特朗普采取行动。1月7日,F...

  • 发布于 2021-04-16 17:36
  • 阅读 ( 102 )

互斥(mutex)和信号量(semaphore)的区别

互斥与信号量 互斥锁类似于房间的一把钥匙。一个人拿着钥匙,就像一根线,是唯一能进入房间的人。有权限的人必须把钥匙交给下一个排队的人。因此,只有获取互斥锁的线程才能释放互斥锁。 互斥锁通常用于序列化对可...

  • 发布于 2021-06-23 04:03
  • 阅读 ( 189 )

三星奋斗(samsung strive)和三星飞行(samsung flight)的区别

...,而Strive有一个a-GPS接收器5。该航班的待机时间比普通航班长 

  • 发布于 2021-06-23 07:42
  • 阅读 ( 179 )

互斥(mutex)和信号量(semaphore)的区别

互斥与信号量 互斥锁用于提供对可重入代码中不能由多个线程并行执行的部分的序列化访问。互斥确保一次只有一个代码可以访问受控部分。为了获得访问权限,其他代码被设置为等待第一个代码退出。你可以把它当作房间的...

  • 发布于 2021-06-23 19:42
  • 阅读 ( 464 )

输入(input)和输出设备(output devices)的区别

...像素。图像的清晰度随着像素数的增加而增加。 Figure 2: Monitor 打印机 打印机是另一种输出设备。它有助于把数据印在纸上。有两种类型的打印机称为撞击式和非撞击式打印机。冲击式打印机通过在色带上敲击字符来打印字符,...

  • 发布于 2021-07-01 00:24
  • 阅读 ( 1547 )

互斥(mutex)和信号量(semaphore)的区别

互斥和信号量的主要区别在于互斥是一种锁定机制,而信号量是一种信令机制。 当多个进程同时访问共享数据时,会导致数据不一致。为了保持数据的一致性,必须保持进程的执行顺序。此外,关键部分是访问共享变量或共享...

  • 发布于 2021-07-01 22:06
  • 阅读 ( 427 )

高清多媒体接口(High Definition Multimedia Interface)(hdmi)和vga格式(vga)的区别

...y (UXGA) UXGA was formerly the most common resolution of 15” fullscreen monitors such as laptop LCDs; however, use has since shifted to 20” and 21.3” desktop monitors and away from laptops. 1600×1200 Wide Extended Graphics Array (WXGA) Derived by widening the XGA resolution to a widescr...

  • 发布于 2021-07-07 01:40
  • 阅读 ( 284 )

计算机显示器(computer monitor)和电视(tv)的区别

...线和现在的三维和高清。 什么是计算机显示器(computer monitor)? 计算机显示器被称为一种设备,它有助于显示来自计算机的视觉效果以及维护该设备的用户所执行的处理和工作。利用它来显示的其他物体成为电缆盒、摄像机、...

  • 发布于 2021-07-08 13:38
  • 阅读 ( 189 )
aaaaa35134
aaaaa35134

0 篇文章

相关推荐