X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flib%2Fuser%2Fsyscall.h;h=c2941087faa09de8dca3c6f434fbcf0f35aea99f;hb=2cfc156c39840ce7f1cda6b473de1322691a8a0b;hp=8dd88fb440f19abeda8544ac7611a3fd16ba2413;hpb=f2f8875638593bd5365cfd6a5ba7c9578e52322f;p=pintos-anon diff --git a/src/lib/user/syscall.h b/src/lib/user/syscall.h index 8dd88fb..c294108 100644 --- a/src/lib/user/syscall.h +++ b/src/lib/user/syscall.h @@ -1,20 +1,32 @@ -#ifndef LIB_USER_SYSCALL_H -#define LIB_USER_SYSCALL_H 1 +#ifndef __LIB_USER_SYSCALL_H +#define __LIB_USER_SYSCALL_H #include #include typedef int pid_t; +#define PID_ERROR ((pid_t) -1) + +typedef int mapid_t; +#define MAP_FAILED ((mapid_t) -1) void halt (void) NO_RETURN; void exit (int status) NO_RETURN; -pid_t exec (const char *); -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); +pid_t exec (const char *file); +int wait (pid_t); +bool create (const char *file, unsigned initial_size); +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 seek (int fd, unsigned position); +unsigned tell (int fd); void close (int fd); +mapid_t mmap (int fd, void *addr); +bool munmap (mapid_t); +bool chdir (const char *dir); +bool mkdir (const char *dir); +void lsdir (void); #endif /* lib/user/syscall.h */