projects
/
pintos-anon
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Replace lsdir system call by readdir, isdir system calls,
[pintos-anon]
/
src
/
lib
/
user
/
syscall.h
diff --git
a/src/lib/user/syscall.h
b/src/lib/user/syscall.h
index d0a22500dd8f36f7090ca57ee23173ff85ecfff4..340d1b15fea253155bbe30c50eb7bc9cb73ee383 100644
(file)
--- a/
src/lib/user/syscall.h
+++ b/
src/lib/user/syscall.h
@@
-5,11
+5,17
@@
#include <debug.h>
typedef int pid_t;
#include <debug.h>
typedef int pid_t;
+#define PID_ERROR ((pid_t) -1)
+
+typedef int mapid_t;
+#define MAP_FAILED ((mapid_t) -1)
+
+#define READDIR_MAX_LEN 14
void halt (void) NO_RETURN;
void exit (int status) NO_RETURN;
pid_t exec (const char *file);
void halt (void) NO_RETURN;
void exit (int status) NO_RETURN;
pid_t exec (const char *file);
-int
join
(pid_t);
+int
wait
(pid_t);
bool create (const char *file, unsigned initial_size);
bool remove (const char *file);
int open (const char *file);
bool create (const char *file, unsigned initial_size);
bool remove (const char *file);
int open (const char *file);
@@
-19,10
+25,11
@@
int write (int fd, const void *buffer, unsigned length);
void seek (int fd, unsigned position);
unsigned tell (int fd);
void close (int fd);
void seek (int fd, unsigned position);
unsigned tell (int fd);
void close (int fd);
-
bool mmap (int fd, void *addr, unsigned length
);
-
bool munmap (void *addr, unsigned length
);
+
mapid_t mmap (int fd, void *addr
);
+
void munmap (mapid_t
);
bool chdir (const char *dir);
bool mkdir (const char *dir);
bool chdir (const char *dir);
bool mkdir (const char *dir);
-void lsdir (void);
+bool readdir (int fd, char name[READDIR_MAX_LEN + 1]);
+bool isdir (int fd);
#endif /* lib/user/syscall.h */
#endif /* lib/user/syscall.h */