腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
在
XV6
中
双重
获取
自旋
锁
、
、
、
正如我们所知道的,
xv6
不会让一个
自旋
锁
被
获取
两次(即使是一个进程本身)。Booting from Hard Disk...
浏览 17
提问于2021-06-09
得票数 2
回答已采纳
1
回答
在
xv6
中
实现
自旋
锁
功能,以便能够从用户级别使用API
、
、
、
xv6
有spinlock.c文件,用于为内核使用创建
自旋
锁
。但是我需要实现spinlock API,以便在用户级别使用。例如,我将实现sp_create()来在用户级别创建
自旋
锁
。或者调用sp_acquire(int )来
获取
锁
等等。为此,我应该创建系统调用,并将实际的实现放在内核
中
。
xv6
具有
自旋
锁
功能,但只能在内核级别使用。我考虑过创建系统调用,它们实际上是调用spinlock.c
中</
浏览 2
提问于2019-11-25
得票数 1
2
回答
带
自旋
锁
冻结的Linux内核线程
、
、
、
、
我使用
自旋
锁
同步这两个线程。{ return 2; } }
在
init模块
中
,我创建这些内核线程(kthread_run)和cleanup_module停止这些线程(kthread_stop)。注意:初始化
自旋
锁
时,我将lock1设置为解锁,lock2设置为锁定。
浏览 8
提问于2014-09-16
得票数 1
2
回答
Linux内核--我可以
在
不同的函数
中
锁定和解锁
自旋
锁
吗?
、
、
、
我对内核编程和使用
锁
编程很陌生。另外,
在
__schedule()中使用
自旋
锁
(
锁
和解锁)安全吗?让调度程序等待
获取
锁
安全吗?
浏览 4
提问于2013-11-04
得票数 3
回答已采纳
2
回答
内核代码
在
持有
自旋
锁
时休眠
、
、
、
假设Linux驱动程序代码
获取
了一个
自旋
锁
,
在
临界区内,一个函数调用迫使
在
驱动程序顶部运行的进程休眠。知道持有
自旋
锁
会禁用相关处理器上的抢占,进程是否有可能被唤醒,从而允许驱动程序代码释放
自旋
锁
?
浏览 0
提问于2014-10-17
得票数 0
1
回答
Anderson操作系统
中
利用
自旋
锁
实现
锁
的原理与实践
、
、
假设我们在线程A
中
,当我们调用the ()时,
锁
由其他线程B拥有。 我们
获取
锁
对象的
自旋
锁
,将线程添加到等待列表
中
,并使用
锁
的
自旋
锁
作为参数调用scheduler.suspend。
在
挂起方法
中
,我们将
获取
调度程序的
自旋
锁
,假设这是免费的,然后释放
锁
的
自旋
锁
,将正在运行的线程A
浏览 1
提问于2019-05-31
得票数 0
回答已采纳
8
回答
为什么你抱着
自旋
锁
不能入睡?
、
在
linux内核
中
,为什么你不能在持有
自旋
锁
的时候睡觉呢?
浏览 2
提问于2011-01-21
得票数 13
回答已采纳
1
回答
是否只有当所有相关线程
在
利用资源之前尝试
获取
它们应该
获取
的
锁
时,互斥
锁
才能正常工作?
、
、
、
我只是
在
第一次上操作系统课之前第一次学习有关
锁
的知识。我最初认为
锁
实际上会“锁定一些资源”,在这里你需要指定资源(可能是通过指向内存中资源地址的指针),但在阅读了几个真正基本的
自旋
锁
实现之后(比如,类unix的培训操作系统“
xv6
”的版本):以及前面的堆栈溢出问题相反,在我看来,
锁
实际上只是一个布尔标志,比如变量,它暂时(或无限期地)阻止一些将利用资源的代码的执行,但只有
在
另一个线程实际上也试图
获取
锁
的情况下(
浏览 2
提问于2020-06-30
得票数 1
1
回答
为什么spin_unlock_bh函数不调用调度程序就启用抢占
、
、
、
、
我
在
研究内核代码的
自旋
锁
代码(版本3.10.1),但是我一点也不明白。 当通过函数spin_lock_bh()
获取
自旋
锁
时,它会继续并调用preempt_disable()。这与用于
获取
的其他
自旋
锁
函数相同,例如spin_lock()和spin_lock_irq()。但是,当通过spin_unlock_bh()释放
锁
时,它调用preempt_enable_no_resched(),后者跳过调用调度程序以抢占。
浏览 8
提问于2019-10-09
得票数 0
回答已采纳
1
回答
投票`pthread_mutex_trylock`有意义吗?
、
、
使用
自旋
锁
(或者是
在
原子原语的基础上实现)被丢弃了,因为我们更希望线程B
在
等待获得
锁
时睡眠。 将繁忙等待(旋转
锁
)和“困倦等待”混为一谈是否是一个可接受的解决方案?
浏览 1
提问于2015-06-16
得票数 1
回答已采纳
1
回答
XV6
的spinlock
中
的pushcli()和popcli()需要原子化吗?
、
、
、
当我学习
XV6
6的spinlock时,我想到了一个问题,
在
google
中
找不到答案。
在
中
,pushcli()和popcli()用来确保当前中断处理程序的运行:{ panic("popcli"); if (mycpu()->ncli == 0 && mycpu()->intena)
浏览 15
提问于2022-04-07
得票数 1
回答已采纳
2
回答
为什么
在
Linux内核(非SMP)
中
自旋
锁
是无操作的?
、
、
这就是我想出来的(没有错误或NULL处理,只是为了这个问题): 内核
自旋
锁在内核线程内执行,这是抢占的。
浏览 1
提问于2012-07-23
得票数 1
回答已采纳
1
回答
为什么这个
自旋
锁
需要memory_order_acquire_release而不是仅仅获得?
、
、
、
、
std::thread t(workOnResource); t2.join(); 在说明中指出:
在
两个以上的线程使用
自旋
锁
的情况下,
获取
锁
方法的语义是不够的。现在,
锁
方法是一个
获取
释放操作。因此,第12行
中
的内存模型对flag.test_and_set(std::memory_order_acquire)的调用必须更改为std::memory_o
浏览 4
提问于2022-01-12
得票数 6
回答已采纳
1
回答
Windows驱动程序、
自旋
锁
获取
和条件测试
、
、
、
在
一个分派例程
中
,我们有以下代码:{}KeAcquireInStackQueuedSpinLockAtDpcLevelDeviceExtension->Flag =
浏览 8
提问于2017-11-08
得票数 0
1
回答
自旋
锁
-(单处理器与多处理器)-(抢占式与非抢占式内核)
、
、
我对
在
不同的场景中使用
自旋
锁
(在内核模式下)有一些困惑。请澄清。2)
自旋
锁
( Uniprocessor +抢占内核)-->不应该使用,因为它浪费资源。(当线程
在
持有
锁
的同时休眠时会发生什么?其他进程是
浏览 3
提问于2013-03-05
得票数 0
回答已采纳
2
回答
2.6Linux内核
中
的
锁
分析
、
、
、
如何在2.6Linux内核中进行
锁
分析(
自旋
和其他类型的
锁
)?我想要
获取
我
在
模块
中
添加的几个
锁
的
锁
争用数。是否有可以启用并
获取
配置文件或任何其他工具的.config选项?
浏览 6
提问于2009-07-23
得票数 0
1
回答
抢占、pthread_spin_lock和原子内建
、
、
、
、
假设我决定从pthread_spin_lock切换到通过原子内建+ compare_and_swap成语实现的
锁
:这件事会改善还是会受到这个问题的影响?由于使用pthread似乎没有什么可禁用抢占的功能,如果我使用通过atomics实现的
锁
或者任何我可以查看的东西,我能做些什么吗? 我有兴趣锁定一个小的关键区域。
浏览 0
提问于2014-03-13
得票数 2
回答已采纳
1
回答
NDIS spinlock是否充当DMA的内存屏障?
、
、
、
、
在
NDIS驱动程序
中
,我需要将一些数据写入共享内存,然后通知HW
获取
这些数据。对共享内存的写入受NDIS
自旋
锁
保护。
在
写入到共享存储器和通知HW数据已被写入之间可能存在竞争。
自旋
锁
是否作为一种隐含的记忆屏障来阻止这场比赛?或者应该显式地添加内存屏障?
浏览 4
提问于2021-11-07
得票数 1
3
回答
互斥
锁
、信号
锁
和
自旋
锁
的区别
、
、
、
、
我正在用IPC做实验,特别是用Mutex,信号量和
自旋
锁
。我学到的是互斥
锁
用于异步锁定(根据我在网上读到的睡眠机制),信号量是同步锁定(有信号和睡眠)机制,
自旋
锁
是同步但非睡眠机制。另一个疑问是Mutex,当我用线程&互斥
锁
编写程序时,当一个线程运行另一个线程时,它不处于睡眠状态,而是不断地尝试
获取
锁
。那么Mutex
在
睡觉还是不睡觉?
浏览 3
提问于2014-05-07
得票数 31
回答已采纳
11
回答
“
自旋
锁
”到底是什么?
在
我的脑海里。 他们是什么?
浏览 0
提问于2009-12-24
得票数 124
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
详解Linux多线程中的互斥锁、读写锁、自旋锁、条件变量、信号量
在ReadWriteLock类中读锁为什么不能升级为写锁?
在 Java 中获取网络日期和时间
Java并发编程:AQS的自旋锁
在 Power BI Desktop 中如何获取网页数据
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券