Lines Matching refs:pid
18 abi::WaitOption, pid::PidType, resource::RUsage, Pid, ProcessControlBlock, ProcessManager,
26 pub pid: Pid, field
37 pub pid: Pid, field
43 pub fn new(pid_type: PidType, pid: Pid, options: WaitOption) -> Self { in new()
46 pid, in new()
57 mut pid: i64, in kernel_wait4()
63 if pid == i64::MIN { in kernel_wait4()
70 if pid == -1 { in kernel_wait4()
72 } else if pid < 0 { in kernel_wait4()
75 pid = -pid; in kernel_wait4()
76 } else if pid == 0 { in kernel_wait4()
79 pid = ProcessManager::current_pcb().pid().data() as i64; in kernel_wait4()
84 let pid = Pid(pid as usize); in kernel_wait4() localVariable
87 let mut kwo = KernelWaitOption::new(pidtype, pid, options); in kernel_wait4()
115 let child_pcb = ProcessManager::find(kwo.pid).ok_or(SystemError::ECHILD); in do_wait()
156 for pid in rd_childen.iter() { in do_wait()
157 let pcb = ProcessManager::find(*pid).ok_or(SystemError::ECHILD)?; in do_wait()
162 unsafe { ProcessManager::release(*pid) }; in do_wait()
163 return Ok((*pid).into()); in do_wait()
193 pid: child_pcb.pid(), in do_waitpid()
220 pid: child_pcb.pid(), in do_waitpid()
226 return Some(Ok(child_pcb.pid().data())); in do_waitpid()
229 let pid = child_pcb.pid(); in do_waitpid() localVariable
240 pid, in do_waitpid()
250 unsafe { ProcessManager::release(pid) }; in do_waitpid()
251 return Some(Ok(pid.into())); in do_waitpid()