社区
非技术区
帖子详情
进程互斥中TSL和Swap的区别?
大河向东流啊流
2020-03-10 01:06:46
两个指令好像运行的时候差不多,优缺点也相似,那有什么区别呢?
...全文
1117
1
打赏
收藏
进程互斥中TSL和Swap的区别?
两个指令好像运行的时候差不多,优缺点也相似,那有什么区别呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
企鹅爱吃方便面
2020-03-12
打赏
举报
回复
这两个指令的确实相似,操作原子,忙式等待,都是需要硬件支持的,在实现上,swap需要两个参数,不需要返回值,而test_and_set则是需要借助一个共享变量来实现互斥,具体的实现细节不需要考虑,但是大体的设计方向是一致的。
此外,在多处理器的计算机中,tsl指令是比较常见的,他可以实现多处理器的互斥,执行tsl指令的CPU会锁住内存总线,在这次的指令周期,准确的说,应该是在本次指令执行结束之前,不允许其他CPU访问内存。
至于swap指令,你可以想一下,这条指令的本质是一把钥匙开一把锁,那如果存在多把锁的时候呢?多把锁锁住的变量相同或者不同呢?
两个指令所做的事情是一样的,但是由于指令的设计,导致他们所能做的事情是有所差别的。
就如数学中:A和B的交集不为空,但是A又不等于B
进程
管理 2.3
进程
同步1
引入目的为解决信号量机制编程麻烦、因同步操作不当而死锁的问题管程的组成管程的名称局部于管程内部的共享数据结构说明对共享数据结构数据初始化的语句一组用来操作访问数
【计算机操作系统】
进程
互斥
的实现方法
逻辑上来看
Swap
和
TSL
并无太大
区别
,都是先记录下此时临界区是否已经被上锁(记录在 old 变量上),再将上锁标记 lock 设置为 true,最后检查 old,如果 old 为 false 则说明之前没有别的
进程
对临界区上锁,则可跳出循环,进入临界区。:双标志先检查法的改版,前一个算法的问题是先“检查”后“上锁”,但是这两个操作又无法一气呵成,因此导致了两个
进程
同时进入临界区的问题,因此人们又想到**先“上锁”后“检查”**的方法,来避免上述问题。,比如上例
中
如果按照 ①⑤②⑥③⑦…
操作系统-
进程
同步与
互斥
及算法实现(单标志、双标志先检查、双标志后检查、
中
断屏蔽、
TSL
指令、
Swap
指令、信号量机制)
目录基本概念
进程
同步
进程
互斥
软件实现方法单标志法双标志法先检查双标志后检查Peterson's Algorithm硬件实现方法
中
断屏蔽方法TestAndSet指令
Swap
指令信号量机制实现
进程
互斥
实现
进程
同步实现前驱关系 早期的操作系统学习笔记???? 主要参考来源 操作系统_清华大学(向勇、陈渝) Operating systems: internals and design principles Operating System Concepts 还有其余的一些网络博文 博客记录 操作系统-Ope
第二章-
进程
同步与
互斥
管程是一种特殊的软件模块,有以下部分组成1 局部于管程的共享数据结构说明;2 对该数据结构进行操作的一组过程‘3 对局部于管程的共享数据设置初始值的语句;4 管程有一个名字;基本特征1 局部于管程的数据只能被局部于管程的过程所访问2 一个
进程
只有通过调用管程的过程才能进入管程访问共享数据;3 每次仅允许一个
进程
在管程内执行某个内部过程;
进程
互斥
与
进程
同步
文章目录什么是
进程
同步?什么是
进程
互斥
?同步
互斥
互斥
机制准则 什么是
进程
同步?
进程
的并发性带来了异步性(各个并发的
进程
独立的以不可预知的速度向前推进),而有的
进程
则需要有次序的相互配合来完成作业,所以有了
进程
同步。
进程
同步:在多道程序环境下,
进程
是并发执行的,不同
进程
之间存在着不同的相互制约关系,。为了协调
进程
之间的相互制约关系,引入了
进程
同步的概念。 临界资源 虽然多个
进程
可以共享系统
中
的各种资源,但其
中
许多资源一段时间内只能为一个
进程
所使用,我们把一次仅允许一个
进程
使用的资源称为临界资源。许多物
非技术区
427
社区成员
2,543
社区内容
发帖
与我相关
我的任务
非技术区
非技术问题的乐园
复制链接
扫一扫
分享
社区描述
非技术问题的乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章