void halt (void) NO_RETURN;
void exit (int status) NO_RETURN;
-pid_t exec (const char *);
+pid_t exec (const char *file);
int join (pid_t);
-bool create (const char *);
-bool remove (const char *);
-int open (const char *);
-int read (int fd, void *, unsigned);
-int write (int fd, const void *, unsigned);
+bool create (const char *file);
+bool remove (const char *file);
+int open (const char *file);
+int filesize (int fd);
+int read (int fd, void *buffer, unsigned length);
+int write (int fd, const void *buffer, unsigned length);
void close (int fd);
+bool mmap (int fd, void *addr, unsigned length);
+bool munmap (void *addr, unsigned length);
+bool chdir (const char *dir);
+bool mkdir (const char *dir);
+void lsdir (void);
#endif /* lib/user/syscall.h */