Home
last modified time | relevance | path

Searched refs:Mutex (Results 1 – 14 of 14) sorted by relevance

/DragonOS/docs/kernel/locking/
H A Dmutex.md25 /// @brief Mutex互斥量结构体
26 /// 请注意!由于Mutex属于休眠锁,因此,如果您的代码可能在中断上下文内执行,请勿采用Mutex
28 pub struct Mutex<T> {
29 /// 该Mutex保护的数据
31 /// Mutex内部的信息
37 /// 当前Mutex是否已经被上锁(上锁时,为true)
47 &emsp;&emsp;与SpinLock类似,Rust版本的Mutex具有一个守卫。使用的时候,需要将要被保护的数据的所有权移交Mutex。并且,守卫只能在加锁成功后产生,因此,每个时刻,每个Mu…
49 &emsp;&emsp;当需要读取、修改Mutex保护的数据时,请先使用Mutex的`lock()`方法。该方法会返回一个`MutexGuard`。您可以使用被保护的数据的成员函数来进行一些操作。或…
54 let x :Mutex<Vec<i32>>= Mutex::new(Vec::new());
61 // 在此处,Mutex是加锁的状态
[all …]
H A Dlocks.md50 &emsp;&emsp;请见{ref}`Mutex文档 <_mutex_doc>`
/DragonOS/tools/debugging/logmonitor/src/backend/
H A Dmod.rs3 sync::{mpsc, Arc, Mutex, RwLock, Weak},
20 data: Arc<Mutex<BackendData>>,
23 threads: Mutex<Vec<JoinHandle<()>>>,
31 data: Arc::new(Mutex::new(BackendData::new())), in new()
33 threads: Mutex::new(Vec::new()), in new()
75 shared_data: Arc<Mutex<BackendData>>,
84 backend_data: Arc<Mutex<BackendData>>, in new()
/DragonOS/kernel/src/arch/x86_64/kvm/
H A Dmod.rs3 use crate::libs::mutex::Mutex;
58 pub fn kvm_arch_vcpu_create(id: u32) -> Result<Arc<Mutex<VmxVcpu>>, SystemError> { in kvm_arch_vcpu_create()
61 return Ok(Arc::new(Mutex::new(vcpu))); in kvm_arch_vcpu_create()
64 pub fn kvm_arch_vcpu_setup(vcpu: &Mutex<VmxVcpu>) -> Result<(), SystemError> { in kvm_arch_vcpu_setup()
69 pub fn kvm_arch_vcpu_ioctl_run(_vcpu: &Mutex<VmxVcpu>) -> Result<(), SystemError> { in kvm_arch_vcpu_ioctl_run()
/DragonOS/kernel/src/virt/kvm/
H A Dmod.rs5 use crate::libs::mutex::Mutex;
22 pub static VM_LIST: Mutex<Vec<Vm>> = Mutex::new(Vec::new());
H A Dvm.rs4 use crate::libs::mutex::Mutex;
23 pub vcpu: Vec<Arc<Mutex<VmxVcpu>>>,
/DragonOS/tools/debugging/logmonitor/src/backend/monitor/
H A Dmm.rs6 sync::{atomic::AtomicBool, mpsc, Arc, Mutex, Weak},
22 shared_data: Arc<Mutex<BackendData>>,
24 threads: Mutex<Vec<JoinHandle<()>>>,
28 mm_log_receiver: Mutex<mpsc::Receiver<MMLogWorkerResult>>,
33 pub(crate) fn new(shared_data: Arc<Mutex<BackendData>>) -> Arc<Self> { in new()
56 threads: Mutex::new(Vec::new()), in new()
59 mm_log_receiver: Mutex::new(mm_log_worker_mpsc.1), in new()
/DragonOS/kernel/src/libs/
H A Dmutex.rs30 pub struct Mutex<T> { struct
40 lock: &'a Mutex<T>, argument
43 unsafe impl<T> Sync for Mutex<T> where T: Send {} implementation
45 impl<T> Mutex<T> { implementation
/DragonOS/docs/kernel/sched/
H A Drust_waiting.md65 …unlock_mutex() | 将当前进程挂起,并设置进程状态为PROC_INTERRUPTIBLE。待当前进程被插入等待队列后,解锁给定的Mutex |
67 …uninterruptible_unlock_mutex() | 将当前进程挂起,并设置进程状态为PROC_UNINTERRUPTIBLE。待当前进程被插入等待队列后,解锁给定的Mutex |
/DragonOS/kernel/src/arch/x86_64/kvm/vmx/
H A Dmmu.rs3 libs::mutex::Mutex,
166 pub fn kvm_mmu_setup(vcpu: &Mutex<VmxVcpu>) { in kvm_mmu_setup()
171 pub fn kvm_vcpu_mtrr_init(_vcpu: &Mutex<VmxVcpu>) -> Result<(), SystemError> { in kvm_vcpu_mtrr_init()
176 pub fn init_kvm_tdp_mmu(vcpu: &Mutex<VmxVcpu>) { in init_kvm_tdp_mmu()
/DragonOS/docs/community/ChangeLog/V0.1.x/
H A DV0.1.4.md36 - Mutex: new: Rust版本的Mutex (#157)
179 new: Rust版本的Mutex (#157)
/DragonOS/kernel/src/arch/x86_64/driver/
H A Drtc.rs30 mutex::Mutex,
41 ops_mutex: Mutex<()>,
54 ops_mutex: Mutex::new(()), in new()
/DragonOS/kernel/src/exception/
H A Dirqdesc.rs25 mutex::{Mutex, MutexGuard},
80 request_mutex: Mutex<()>,
119 request_mutex: Mutex::new(()), in new()
/DragonOS/user/apps/user-manage/src/executor/
H A Dexecutor.rs9 sync::Mutex,
13 static ref GLOBAL_FILE: Mutex<GlobalFile> = Mutex::new(GlobalFile::new());