Replace lsdir system call by readdir, isdir system calls,
[pintos-anon] / src / lib / syscall-nr.h
index 498d05c6511ca54c24112da7c477aebd1b40326d..eb1e0ee907dd62d22265d90e0e9e38db8b51f067 100644 (file)
@@ -2,22 +2,32 @@
 #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. */
+  };
 
 #endif /* lib/syscall-nr.h */