Home
last modified time | relevance | path

Searched refs:atomic (Results 1 – 25 of 28) sorted by relevance

12

/DragonOS-0.1.7/kernel/src/common/
Datomic.h13 #define atomic_read(atomic) ((atomic)->value) // 读取原子变量 argument
14 #define atomic_set(atomic,val) (((atomic)->value) = (val)) // 设置原子变量的初始值 argument
/DragonOS-0.1.7/kernel/src/driver/disk/ahci/
Dmod.rs26 use core::sync::atomic::compiler_fence;
53 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
61 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
70 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
79 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
83 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
90 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
111 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
125 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
158 compiler_fence(core::sync::atomic::Ordering::SeqCst); in ahci_rust_init()
[all …]
Dahcidisk.rs21 use core::sync::atomic::compiler_fence;
58 compiler_fence(core::sync::atomic::Ordering::SeqCst); in read_at()
180 compiler_fence(core::sync::atomic::Ordering::SeqCst); in read_at()
191 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
210 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
220 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
232 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
241 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
302 compiler_fence(core::sync::atomic::Ordering::SeqCst); in write_at()
Dhba.rs4 use core::sync::atomic::compiler_fence;
203 compiler_fence(core::sync::atomic::Ordering::SeqCst); in init()
212 compiler_fence(core::sync::atomic::Ordering::SeqCst); in init()
224 compiler_fence(core::sync::atomic::Ordering::SeqCst); in init()
/DragonOS-0.1.7/kernel/src/arch/x86_64/
Dcontext.rs3 use core::sync::atomic::compiler_fence;
18 compiler_fence(core::sync::atomic::Ordering::SeqCst); in switch_process()
22 compiler_fence(core::sync::atomic::Ordering::SeqCst); in switch_process()
/DragonOS-0.1.7/kernel/src/arch/x86_64/asm/
Dcurrent.rs3 use core::{arch::asm, sync::atomic::compiler_fence};
12 compiler_fence(core::sync::atomic::Ordering::SeqCst); in current_pcb()
14 compiler_fence(core::sync::atomic::Ordering::SeqCst); in current_pcb()
/DragonOS-0.1.7/kernel/src/process/
Dfork.rs1 use core::{ffi::c_void, ptr::null_mut, sync::atomic::compiler_fence};
15 atomic::atomic_set,
50 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
56 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
65 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
68 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
72 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
75 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
77 compiler_fence(core::sync::atomic::Ordering::SeqCst); in process_copy_sighand()
/DragonOS-0.1.7/kernel/src/sched/
Dcfs.rs1 use core::{ptr::null_mut, sync::atomic::compiler_fence};
193 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
198 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
202 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
205 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
211 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
218 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
224 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
226 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
228 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
Dcore.rs1 use core::sync::atomic::compiler_fence;
79 compiler_fence(core::sync::atomic::Ordering::SeqCst); in __sched()
82 compiler_fence(core::sync::atomic::Ordering::SeqCst); in __sched()
107 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched_enqueue()
120 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched_enqueue()
128 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched_enqueue()
Drt.rs1 use core::{ptr::null_mut, sync::atomic::compiler_fence};
186 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
204 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sched()
/DragonOS-0.1.7/kernel/src/libs/
Dmod.rs1 pub mod atomic; module
Dsemaphore.rs1 use core::sync::atomic::{AtomicI32, Ordering};
Drefcount.rs7 atomic::atomic_read,
Dlazy_init.rs23 use core::sync::atomic::{AtomicBool, Ordering};
Dspinlock.rs6 use core::sync::atomic::{AtomicBool, Ordering};
/DragonOS-0.1.7/docs/kernel/core_api/
Dindex.rst12 atomic
Datomic.md5   DragonOS实现了原子变量,类型为atomic_t. 原子变量是基于具体体系结构的原子操作指令实现的。具体实现在`kernel/common/atomic.h`中。
/DragonOS-0.1.7/kernel/src/ipc/
Dsignal.rs5 sync::atomic::compiler_fence,
94 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sys_kill()
103 compiler_fence(core::sync::atomic::Ordering::SeqCst); in sys_kill()
145 compiler_fence(core::sync::atomic::Ordering::SeqCst); in signal_kill_proc_info()
148 compiler_fence(core::sync::atomic::Ordering::SeqCst); in signal_kill_proc_info()
184 compiler_fence(core::sync::atomic::Ordering::SeqCst); in signal_send_sig_info()
187 compiler_fence(core::sync::atomic::Ordering::SeqCst); in signal_send_sig_info()
275 compiler_fence(core::sync::atomic::Ordering::SeqCst); in __send_signal_locked()
298 compiler_fence(core::sync::atomic::Ordering::SeqCst); in __send_signal_locked()
316 compiler_fence(core::sync::atomic::Ordering::SeqCst); in complete_signal()
[all …]
/DragonOS-0.1.7/kernel/src/driver/video/
Dmod.rs3 sync::atomic::{AtomicBool, Ordering},
/DragonOS-0.1.7/kernel/src/driver/keyboard/
Dps2_keyboard.rs1 use core::sync::atomic::AtomicI32;
128 let prev_ref_count = self.1.fetch_add(1, core::sync::atomic::Ordering::SeqCst); in open()
142 let prev_ref_count = self.1.fetch_sub(1, core::sync::atomic::Ordering::SeqCst); in close()
/DragonOS-0.1.7/kernel/src/arch/x86_64/interrupt/
Dmod.rs4 sync::atomic::{compiler_fence, Ordering},
/DragonOS-0.1.7/kernel/src/net/
Dmod.rs3 sync::atomic::AtomicUsize,
27 .fetch_add(1, core::sync::atomic::Ordering::SeqCst) in generate_iface_id()
/DragonOS-0.1.7/docs/introduction/
Dfeatures.md39 - [x] atomic原子变量
/DragonOS-0.1.7/docs/community/ChangeLog/V0.1.x/
DV0.1.0.md109 - atomic 原子变量
/DragonOS-0.1.7/kernel/src/exception/
Dsoftirq.rs6 sync::atomic::{compiler_fence, Ordering},

12