1 use crate::{include::bindings::bindings::enter_syscall_int, syscall::SYS_SCHED}; 2 3 /// @brief 若内核代码不处在中断上下文中,那么将可以使用本函数,发起一个sys_sched系统调用,然后运行调度器。 4 /// 由于只能在中断上下文中进行进程切换,因此需要发起一个系统调用SYS_SCHED。 5 #[no_mangle] 6 pub extern "C" fn sched() { 7 unsafe { 8 enter_syscall_int(SYS_SCHED as u64, 0, 0, 0, 0, 0, 0, 0, 0); 9 } 10 } 11