sys_yield tests worked on qemu.
This commit is contained in:
parent
3f3e6b2b99
commit
adbe671fe1
10 changed files with 134 additions and 53 deletions
|
@ -1,12 +1,18 @@
|
|||
use crate::task::switch_to_next_task;
|
||||
use crate::task::{
|
||||
mark_current_suspended,
|
||||
mark_current_exited,
|
||||
run_next_task
|
||||
};
|
||||
|
||||
pub fn sys_exit(xstate: i32) -> ! {
|
||||
println!("[kernel] Application exited with code {}", xstate);
|
||||
//run_next_app()
|
||||
panic!("[kernel] first exit!");
|
||||
mark_current_exited();
|
||||
run_next_task();
|
||||
panic!("Unreachable in sys_exit!");
|
||||
}
|
||||
|
||||
pub fn sys_yield() -> isize {
|
||||
switch_to_next_task();
|
||||
mark_current_suspended();
|
||||
run_next_task();
|
||||
0
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue