操作系统~进程同步与进程互斥的概念和实现方式

本文深入探讨了进程同步和互斥的概念,强调了它们在多进程协作中的重要性。进程同步关注的是保证正确执行顺序,避免数据竞争,而进程互斥则是确保对临界资源的独占访问。介绍了临界区、互斥量、信号量和事件等同步机制,以及中断屏蔽和TestAndSet指令等互斥实现方式,阐述了各自的优缺点和适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是进程同步

知识点回顾:进程是具有异步性的特征。
异步性是指,各并发执行的进程以各自独立的、不可预知的速度向前推进。
在这里插入图片描述
读进程和写进程并发地运行,由于并发必然导致异步性,因此“写数据”和“读数据”两个操作执行的先后顺序是不确定的。
而实际应用中,又必须按照“写数据→读数据”的顺序来执行的。
如何解决这种异步问题,就是“进程同步”所讨论的内容。
同步亦称直接制约关系,它是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系。进程间的直接制约关系就是源于它们之间的相互合作。

什么是进程互斥

进程的“并发”需要“共享”的支持。各个并发执行的进程不可避免的需要共享一些系统资源(比如内存,又比如打印机、摄像头这样的l/o设备)

我们把一个时间段内只允许一个进程使用的资源称为临界资源。许多物理设备(比如摄像头打印机)都属于临界资源。此外还有许多变量、数据、内存缓冲区等都属于临界资源。

对临界资源的访问,必须互斥地进行。
互斥,亦称间接制约关系。进程互斥指当一个进程访问某临界资源时,另一个想要访问该临界资源的进程必须等待。
当前访问临界资源的进程访问结束,释放该资源之后,另一个进程才能去访问临界资源。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值