X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flib%2Fsyscall-nr.h;h=21a7af952f8728f93b77d6867ebbf60a7699864c;hb=59f738d500f51ffc5f487344865b8bed69c26281;hp=fa9bde91ecdd3008cf1aab568a42accc3b02ae8f;hpb=f2f8875638593bd5365cfd6a5ba7c9578e52322f;p=pintos-anon diff --git a/src/lib/syscall-nr.h b/src/lib/syscall-nr.h index fa9bde9..21a7af9 100644 --- a/src/lib/syscall-nr.h +++ b/src/lib/syscall-nr.h @@ -1,23 +1,34 @@ -#ifndef LIB_SYSCALL_NR_H -#define LIB_SYSCALL_NR_H 1 +#ifndef __LIB_SYSCALL_NR_H +#define __LIB_SYSCALL_NR_H /* System call numbers. */ -#define SYS_halt 0 /* Halts the operating system. */ -#define SYS_exit 1 /* Terminates this process. */ -#define SYS_exec 2 /* Start another process. */ -#define SYS_join 3 /* Waits for a child process to die. */ -#define SYS_create 4 /* Creates a file. */ -#define SYS_remove 5 /* Deletes a file. */ -#define SYS_open 6 /* Opens a file. */ -#define SYS_read 7 /* Reads from a file. */ -#define SYS_write 8 /* Writes to a file. */ -#define SYS_close 9 /* Closes a file. */ -#define SYS_length 10 /* Obtains a file's size. */ -#define SYS_mmap 11 /* Maps a file into memory. */ -#define SYS_munmap 12 /* Removes a memory mapping. */ +enum + { + /* Projects 2 and later. */ + SYS_HALT, /* Halt the operating system. */ + SYS_EXIT, /* Terminate this process. */ + SYS_EXEC, /* Start another process. */ + SYS_WAIT, /* Wait for a child process to die. */ + SYS_CREATE, /* Create a file. */ + SYS_REMOVE, /* Delete a file. */ + SYS_OPEN, /* Open a file. */ + SYS_FILESIZE, /* Obtain a file's size. */ + SYS_READ, /* Read from a file. */ + SYS_WRITE, /* Write to a file. */ + SYS_SEEK, /* Change position in a file. */ + SYS_TELL, /* Report current position in a file. */ + SYS_CLOSE, /* Close a file. */ -/* Predefined file handles. */ -#define STDIN_FILENO 0 -#define STDOUT_FILENO 1 + /* Project 3 and optionally project 4. */ + SYS_MMAP, /* Map a file into memory. */ + SYS_MUNMAP, /* Remove a memory mapping. */ + + /* Project 4 only. */ + SYS_CHDIR, /* Change the current directory. */ + SYS_MKDIR, /* Create a directory. */ + SYS_READDIR, /* Reads a directory entry. */ + SYS_ISDIR, /* Tests if a fd represents a directory. */ + SYS_INUMBER /* Returns the inode number for a fd. */ + }; #endif /* lib/syscall-nr.h */