Home
last modified time | relevance | path

Searched defs:process_control_block (Results 1 – 13 of 13) sorted by relevance

/DragonOS-0.1.7/kernel/src/process/
Dproc-types.h78 struct process_control_block struct
81 volatile uint64_t state;
83 uint64_t flags;
84 int32_t preempt_count; // 持有的自旋锁的数
86 uint32_t cpu_id; // 当前进程在哪个CPU核心上运
88 char name[PCB_NAME_LEN];
91 struct mm_struct *mm;
117 struct process_control_block *prev_pcb, *next_pcb; argument
119 struct process_control_block *parent_pcb; argument
144 struct process_control_block pcb; argument
Dprocess.rs48 _pcb: *mut process_control_block, in process_try_to_wake_up()
89 pub extern "C" fn process_wake_up_state(pcb: *mut process_control_block, state: u64) -> bool { in process_wake_up_state()
94 pub fn process_kick(pcb: *mut process_control_block) { in process_kick()
115 return cpu_executing(process_cpu(pcb)) as *const process_control_block == pcb; in process_is_executing() constant
118 impl process_control_block { impl
142 from: &'static process_control_block, in copy_files()
337 from: &'static process_control_block, in process_copy_files()
383 pub extern "C" fn rs_process_exit_fpstate(pcb: &'static mut process_control_block) { in rs_process_exit_fpstate()
Dfork.rs110 pub extern "C" fn process_exit_signal(pcb: *mut process_control_block) { in process_exit_signal()
126 pub extern "C" fn process_exit_sighand(pcb: *mut process_control_block) { in process_exit_sighand()
Dinitial_proc.rs28 pub extern "C" fn initial_proc_init_signal(pcb: *mut process_control_block) { in initial_proc_init_signal()
/DragonOS-0.1.7/kernel/src/sched/
Dcore.rs23 pub fn cpu_executing(cpu_id: u32) -> &'static mut process_control_block { in cpu_executing()
45 pub fn loads_balance(pcb: &mut process_control_block) { in loads_balance()
72 fn sched(&mut self) -> Option<&'static mut process_control_block>; in sched()
75 fn enqueue(&mut self, pcb: &'static mut process_control_block); in enqueue()
84 let next: &'static mut process_control_block; in __sched() variable
106 pub extern "C" fn sched_enqueue(pcb: &'static mut process_control_block, mut reset_time: bool) { in sched_enqueue()
193 pub extern "C" fn sched_set_cpu_idle(cpu_id: usize, pcb: *mut process_control_block) { in sched_set_cpu_idle()
204 pcb: &'static mut process_control_block, in sched_migrate_process()
Drt.rs54 pub fn enqueue(&mut self, pcb: &'static mut process_control_block) { in enqueue()
68 pub fn dequeue(&mut self) -> Option<&'static mut process_control_block> { in dequeue()
69 let res: Option<&'static mut process_control_block>; in dequeue() variable
82 pub fn enqueue_front(&mut self, pcb: &'static mut process_control_block) { in enqueue_front()
135 pub fn pick_next_task_rt(&mut self, cpu_id: u32) -> Option<&'static mut process_control_block> { in pick_next_task_rt()
140 let proc: Option<&'static mut process_control_block> = cpu_queue_i.dequeue(); in pick_next_task_rt() variable
163 pub fn enqueue_front(&mut self, pcb: &'static mut process_control_block) { in enqueue_front()
171 fn sched(&mut self) -> Option<&'static mut process_control_block> { in sched()
175 let proc: &'static mut process_control_block = in sched() variable
216 fn enqueue(&mut self, pcb: &'static mut process_control_block) { in enqueue()
Dcfs.rs61 pub fn enqueue(&mut self, pcb: &'static mut process_control_block) { in enqueue()
77 pub fn dequeue(&mut self) -> &'static mut process_control_block { in dequeue()
78 let res: &'static mut process_control_block; in dequeue() variable
161 pub fn enqueue_reset_vruntime(&mut self, pcb: &'static mut process_control_block) { in enqueue_reset_vruntime()
171 pub fn set_cpu_idle(&mut self, cpu_id: usize, pcb: *mut process_control_block) { in set_cpu_idle()
184 fn sched(&mut self) -> Option<&'static mut process_control_block> { in sched()
191 let proc: &'static mut process_control_block = current_cpu_queue.dequeue(); in sched() variable
233 fn enqueue(&mut self, pcb: &'static mut process_control_block) { in enqueue()
/DragonOS-0.1.7/kernel/src/arch/x86_64/
Dcontext.rs13 prev: &'static mut process_control_block, in switch_process()
14 next: &'static mut process_control_block, in switch_process()
Dfpu.rs80 pub fn fp_state_save(pcb: &mut process_control_block) { in fp_state_save()
119 pub fn fp_state_restore(pcb: &mut process_control_block) { in fp_state_restore()
/DragonOS-0.1.7/kernel/src/arch/x86_64/mm/
Dmod.rs17 next_pcb: &'static mut process_control_block, in switch_mm()
18 ) -> &'static mut process_control_block { in switch_mm()
/DragonOS-0.1.7/kernel/src/mm/
Dmod.rs21 unsafe impl Send for process_control_block {} implementation
22 unsafe impl Sync for process_control_block {} implementation
/DragonOS-0.1.7/kernel/src/ipc/
Dsignal.rs170 target_pcb: &mut process_control_block, in signal_send_sig_info()
200 pcb: &'a mut process_control_block, in lock_process_sighand()
223 fn unlock_process_sighand(pcb: &mut process_control_block, flags: u64) { in unlock_process_sighand()
236 pcb: &mut process_control_block, in send_signal_locked()
265 pcb: &mut process_control_block, in __send_signal_locked()
307 fn complete_signal(sig: SignalNumber, pcb: &mut process_control_block, pt: PidType) { in complete_signal()
384 fn sig_fatal(pcb: &process_control_block, sig: SignalNumber) -> bool { in sig_fatal()
413 fn signal_wake_up(pcb: &mut process_control_block, fatal: bool) { in signal_wake_up()
422 fn signal_wake_up_state(pcb: &mut process_control_block, state: u64) { in signal_wake_up_state()
812 pub fn flush_signal_handlers(pcb: *mut process_control_block, force_default: bool) { in flush_signal_handlers()
/DragonOS-0.1.7/kernel/src/libs/
Dmutex.rs53 wait_list: LinkedList::<&'static mut process_control_block>::new(), in new() variable