diff --git a/src/userprog/syscall.c b/src/userprog/syscall.c index 04635159d30520fa11296dc922e622f2ad2553d5..d1927a96c08078cb069c98169b72b94d058c7bc8 100644 --- a/src/userprog/syscall.c +++ b/src/userprog/syscall.c @@ -17,5 +17,12 @@ static void syscall_handler (struct intr_frame *f UNUSED) { printf ("system call!\n"); + int syscall_nr=-1; + switch(sysCall) { + case SYS_HALT:{ + printf ("system call, halt\n"); + shutdown_power_off(); + break; + } thread_exit (); }