You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
551 B
Rust
21 lines
551 B
Rust
//! App management syscalls
|
|
// use crate::batch::run_next_app;
|
|
use crate::println;
|
|
use crate::task::{exit_current_and_run_next, suspend_current_and_run_next};
|
|
use crate::timer::get_time_ms;
|
|
|
|
/// 任务退出, 并立即切换任务
|
|
pub fn sys_exit(exit_code: i32) -> ! {
|
|
println!("[kernel] Application exited with code {}", exit_code);
|
|
exit_current_and_run_next();
|
|
panic!("Unreachable in sys_exit!");
|
|
}
|
|
|
|
pub fn sys_yield() -> isize {
|
|
suspend_current_and_run_next();
|
|
0
|
|
}
|
|
|
|
pub fn sys_get_time() -> isize {
|
|
get_time_ms() as isize
|
|
} |