summaryrefslogtreecommitdiffstats
path: root/userprog/syscall.c
diff options
context:
space:
mode:
Diffstat (limited to 'userprog/syscall.c')
-rw-r--r--userprog/syscall.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/userprog/syscall.c b/userprog/syscall.c
index 541668d..71aba5c 100644
--- a/userprog/syscall.c
+++ b/userprog/syscall.c
@@ -14,6 +14,7 @@
14#include "userprog/pagedir.h" 14#include "userprog/pagedir.h"
15#include "userprog/process.h" 15#include "userprog/process.h"
16#include "userprog/syscall.h" 16#include "userprog/syscall.h"
17#include "lib/user/syscall.h"
17 18
18#define STACK_SLOT_SIZE sizeof(int) 19#define STACK_SLOT_SIZE sizeof(int)
19 20
@@ -181,7 +182,9 @@ static handler
181 syscall_read, 182 syscall_read,
182 syscall_seek, 183 syscall_seek,
183 syscall_tell, 184 syscall_tell,
184 syscall_close; 185 syscall_close,
186 syscall_mmap,
187 syscall_munmap;
185 188
186/* Register syscall_handler for interrupt 0x30 */ 189/* Register syscall_handler for interrupt 0x30 */
187void 190void
@@ -217,6 +220,8 @@ syscall_handler (struct intr_frame *f)
217 case SYS_SEEK: fp = syscall_seek; break; 220 case SYS_SEEK: fp = syscall_seek; break;
218 case SYS_TELL: fp = syscall_tell; break; 221 case SYS_TELL: fp = syscall_tell; break;
219 case SYS_CLOSE: fp = syscall_close; break; 222 case SYS_CLOSE: fp = syscall_close; break;
223 case SYS_MMAP: fp = syscall_mmap; break;
224 case SYS_MUNMAP: fp = syscall_munmap; break;
220 default: 225 default:
221 goto fail; 226 goto fail;
222 } 227 }
@@ -564,3 +569,15 @@ syscall_close (void *sp, bool *segfault)
564 (void) process_close_file (fd); 569 (void) process_close_file (fd);
565 return 0; 570 return 0;
566} 571}
572
573static int
574syscall_mmap (void *sp, bool *segfault)
575{
576 return 0;
577}
578
579static int
580syscall_munmap (void *sp, bool *segfault)
581{
582 return 0;
583}