#ifndef _UNISTD_H #define _UNISTD_H #include #include #include #include #define STDOUT_FILENO 0 #define STDERR_FILENO 1 #ifdef __cplusplus extern "C" { #endif /* Executes the program program. On success, does not return. The second parameter (arguments) is not implemented * for now. You can pass NULL to it. */ int execv(const char* program, char* const[]); /* Not implemented. */ int execve(const char*, char* const[], char* const[]); /* Not implemented. */ int execvp(const char*, char* const[]); /* Not implemented. */ pid_t fork(void); /* Terminates the program with the status code status. */ __lc_noreturn void _exit(int status); /* Calls the kernel for a specific service, determined by number. */ long syscall(long number, ...); /* Suspends execution for a chosen amount of seconds. */ unsigned int sleep(unsigned int seconds); /* Reads count bytes from the file descriptor fd into the memory at buf. */ ssize_t read(int fd, void* buf, size_t count); /* Writes count bytes of the memory at buf to the file descriptor fd. */ ssize_t write(int fd, const void* buf, size_t count); /* Closes the file descriptor fd. */ int close(int fd); /* Moves the read/write file offset for fd to offset, depending on whence. */ off_t lseek(int fd, off_t offset, int whence); /* Returns a copy of the file descriptor fd. */ int dup(int fd); #ifdef __cplusplus } #endif #endif