Lines Matching refs:pid
17 abi::WaitOption, pid::PidType, resource::RUsage, Pid, ProcessControlBlock, ProcessManager,
25 pub pid: Pid, field
35 pub pid: Pid, field
41 pub fn new(pid_type: PidType, pid: Pid, options: WaitOption) -> Self { in new()
44 pid, in new()
55 mut pid: i64, in kernel_wait4()
61 if pid == i64::MIN { in kernel_wait4()
68 if pid == -1 { in kernel_wait4()
70 } else if pid < 0 { in kernel_wait4()
73 pid = -pid; in kernel_wait4()
74 } else if pid == 0 { in kernel_wait4()
77 pid = ProcessManager::current_pcb().pid().data() as i64; in kernel_wait4()
82 let pid = Pid(pid as usize); in kernel_wait4() localVariable
85 let mut kwo = KernelWaitOption::new(pidtype, pid, options); in kernel_wait4()
113 let child_pcb = ProcessManager::find(kwo.pid).ok_or(SystemError::ECHILD); in do_wait()
155 for pid in rd_childen.iter() { in do_wait()
156 let pcb = ProcessManager::find(*pid).ok_or(SystemError::ECHILD)?; in do_wait()
161 unsafe { ProcessManager::release(pid.clone()) }; in do_wait()
162 return Ok(pid.clone().into()); in do_wait()
192 pid: child_pcb.pid(), in do_waitpid()
219 pid: child_pcb.pid(), in do_waitpid()
225 return Some(Ok(child_pcb.pid().data())); in do_waitpid()
228 let pid = child_pcb.pid(); in do_waitpid() localVariable
239 pid, in do_waitpid()
249 unsafe { ProcessManager::release(pid) }; in do_waitpid()
250 return Some(Ok(pid.into())); in do_waitpid()