Home
last modified time | relevance | path

Searched refs:cmpxchg (Results 1 – 4 of 4) sorted by relevance

/DragonOS-0.1.7/docs/kernel/locking/
Dlockref.md12 /// 仅在x86_64架构下使用cmpxchg
14 /// 由于需要cmpxchg,所以整个lockref按照8字节对齐
22 /// 除了x86_64以外的架构,不使用cmpxchg进行优化
51   并且,在x64体系结构下,还通过cmpxchg()指令,实现了无锁快速路径。不需要对自旋锁加锁即可更改引用计数的值,进一步提升性能。当快速路径不存在(对于未支持的体系结构)或…
55   在改变引用计数时,cmpxchg先确保没有别的线程持有锁,然后改变引用计数,同时通过`lock cmpxchg`指令验证在更改发生时,没有其他线程持有锁,并且当前的目标loc…
113 &emsp;&emsp;本函数与`lockref_dec_return()`的区别在于,当在`cmpxchg()`中检测到`count<=0`或已加锁,本函数会再次尝试通过加锁来执行操作,而`loc…
126 &emsp;&emsp;本函数与`lockref_dec()`的区别在于,当在`cmpxchg()`中检测到`count<=0`或已加锁,本函数会直接返回错误,而`lockref_dec()`会再次…
129 若当前处理器架构不支持cmpxchg,则退化为`self.dec()`
145 &emsp;&emsp;该函数与`lockref_dec_or_lock_not_zero()`的区别在于,当`cmpxchg()`时发现`old.count≤1`时,该函数会直接返回`Err(-1…
161 &emsp;&emsp;该函数与`lockref_dec_not_zero()`的区别在于,当cmpxchg()时发现`old.count≤1`时,该函数会尝试加锁来进行操作,而`lockref_d…
/DragonOS-0.1.7/kernel/src/arch/x86_64/asm/
Dmod.rs5 pub mod cmpxchg; module
/DragonOS-0.1.7/docs/community/ChangeLog/V0.1.x/
DV0.1.1.md33 - 目录结构优化:移动asm.h和cmpxchg.h
217 * 移动asm.h和cmpxchg.h
/DragonOS-0.1.7/kernel/src/libs/
Dlockref.rs3 use crate::{arch::asm::cmpxchg::try_cmpxchg_q, syscall::SystemError};