pagetable lab initialized
This commit is contained in:
79
user/user.h
79
user/user.h
@ -1,47 +1,62 @@
|
||||
#include "kernel/types.h"
|
||||
#include "kernel/sysinfo.h"
|
||||
#ifdef LAB_MMAP
|
||||
typedef unsigned long size_t;
|
||||
typedef long int off_t;
|
||||
#endif
|
||||
struct stat;
|
||||
|
||||
// system calls
|
||||
int fork(void);
|
||||
int exit(int) __attribute__((noreturn));
|
||||
int wait(int *);
|
||||
int pipe(int *);
|
||||
int write(int, const void *, int);
|
||||
int read(int, void *, int);
|
||||
int wait(int*);
|
||||
int pipe(int*);
|
||||
int write(int, const void*, int);
|
||||
int read(int, void*, int);
|
||||
int close(int);
|
||||
int kill(int);
|
||||
int exec(const char *, char **);
|
||||
int open(const char *, int);
|
||||
int mknod(const char *, short, short);
|
||||
int unlink(const char *);
|
||||
int fstat(int fd, struct stat *);
|
||||
int link(const char *, const char *);
|
||||
int mkdir(const char *);
|
||||
int chdir(const char *);
|
||||
int exec(const char*, char**);
|
||||
int open(const char*, int);
|
||||
int mknod(const char*, short, short);
|
||||
int unlink(const char*);
|
||||
int fstat(int fd, struct stat*);
|
||||
int link(const char*, const char*);
|
||||
int mkdir(const char*);
|
||||
int chdir(const char*);
|
||||
int dup(int);
|
||||
int getpid(void);
|
||||
char *sbrk(int);
|
||||
char* sbrk(int);
|
||||
int sleep(int);
|
||||
int uptime(void);
|
||||
int trace(int);
|
||||
int sysinfo(struct sysinfo*);
|
||||
#ifdef LAB_NET
|
||||
int bind(uint32);
|
||||
int unbind(uint32);
|
||||
int send(uint32, uint32, uint32, char *, uint32);
|
||||
int recv(uint32, uint32*, uint32*, char *, uint32);
|
||||
#endif
|
||||
#ifdef LAB_PGTBL
|
||||
int ugetpid(void);
|
||||
uint64 pgpte(void*);
|
||||
void kpgtbl(void);
|
||||
int pgaccess(void *base, int len, void *mask);
|
||||
#endif
|
||||
|
||||
// ulib.c
|
||||
int stat(const char *, struct stat *);
|
||||
char *strcpy(char *, const char *);
|
||||
char *strncpy(char *, const char *, int);
|
||||
void *memmove(void *, const void *, int);
|
||||
char *strchr(const char *, char c);
|
||||
int strcmp(const char *, const char *);
|
||||
int strncmp(const char *, const char *, int);
|
||||
void fprintf(int, const char *, ...);
|
||||
void printf(const char *, ...);
|
||||
char *gets(char *, int max);
|
||||
uint strlen(const char *);
|
||||
void *memset(void *, int, uint);
|
||||
void *malloc(uint);
|
||||
void free(void *);
|
||||
int atoi(const char *);
|
||||
int stat(const char*, struct stat*);
|
||||
char* strcpy(char*, const char*);
|
||||
void *memmove(void*, const void*, int);
|
||||
char* strchr(const char*, char c);
|
||||
int strcmp(const char*, const char*);
|
||||
void fprintf(int, const char*, ...) __attribute__ ((format (printf, 2, 3)));
|
||||
void printf(const char*, ...) __attribute__ ((format (printf, 1, 2)));
|
||||
char* gets(char*, int max);
|
||||
uint strlen(const char*);
|
||||
void* memset(void*, int, uint);
|
||||
int atoi(const char*);
|
||||
int memcmp(const void *, const void *, uint);
|
||||
void *memcpy(void *, const void *, uint);
|
||||
#ifdef LAB_LOCK
|
||||
int statistics(void*, int);
|
||||
#endif
|
||||
|
||||
// umalloc.c
|
||||
void* malloc(uint);
|
||||
void free(void*);
|
||||
|
||||
Reference in New Issue
Block a user