进程,线程,管程,协程

本文介绍了操作系统中的进程、线程和协程的概念。进程作为系统资源分配的基本单位,线程是CPU调度的基础,而协程则是一种轻量级线程,由用户而非操作系统调度,具有更高的执行效率和更低的开销。线程和协程在同步机制、安全性及调度方式上存在显著差异。此外,文章还提到了管程,一种用于管理共享资源和同步操作的机制,以避免潜在的死锁问题。
摘要由CSDN通过智能技术生成

进程与线程

        对于操作系统来说,进程是系统资源分配的最小单位,线程是CPU调度的最小单位。进程是一个运行中的程序,线程属于进程的一部分,是进程内部一段正在执行的序列,它在进程里面有单独的栈空间,进程调度的对象是线程,而不是进程。线程的切换不会引起进程的切换。他们两的联系相当于进程是一列火车,线程则是里面的一节节车厢,你可以在不同车厢之间走动但你仍旧在这辆火车上。

协程

        协程是一种用户态的轻量级线程。一个进程可以有多个线程,而一个线程里面也可以有多个协程,协程是被程序所管理的,他的暂停完全是由程序控制的,而线程的阻塞状态是通过操作系统内核来切换的,所以协程的切换效率比线程还要高,开销比线程小

协程和线程的区别有:

1. 线程程是由CPU调度,而协程是由用户调度

2. 线程存在安全问题,协程比线程较安全

3. 线程使用同步机制,协程使用异步机制

管程

        管程就是代表共享资源的数据结构以及由对该共享数据结构实施操作的一组过程所组成的资源管理程序共同构成的一个操作系统的资源管理模块。

        一次只允许一个进程访问的资源或者多个进程只能互斥访问的资源,访问需进行同步操作​,但大量的同步操作分散在各处,容易使用不当而产生死锁,为了解决这个问题出现了管程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值