diff options
Diffstat (limited to 'defs.h')
-rw-r--r-- | defs.h | 24 |
1 files changed, 19 insertions, 5 deletions
@@ -60,9 +60,10 @@ extern uchar ioapicid; void ioapicinit(void); // kalloc.c +extern int nfreemem; char* kalloc(int); void kfree(char*, int); -void kinit(void); +void kinit(char*,uint); // kbd.c void kbdintr(void); @@ -101,8 +102,6 @@ int kill(int); void pinit(void); void procdump(void); void scheduler(void) __attribute__((noreturn)); -void ksegment(void); -void usegment(void); void sleep(void*, struct spinlock*); void userinit(void); int wait(void); @@ -143,7 +142,7 @@ void timerinit(void); // trap.c void idtinit(void); -extern int ticks; +extern uint ticks; void tvinit(void); extern struct spinlock tickslock; @@ -152,6 +151,21 @@ void uartinit(void); void uartintr(void); void uartputc(int); +// vm.c +void pminit(void); +void ksegment(void); +void kvmalloc(void); +void vmenable(void); +pde_t* setupkvm(void); +char* uva2ka(pde_t*, char*); +int allocuvm(pde_t*, char*, uint); +int deallocuvm(pde_t *pgdir, char *addr, uint sz); +void freevm(pde_t*); +void inituvm(pde_t*, char*, char*, uint); +int loaduvm(pde_t*, char*, struct inode *ip, uint, uint); +pde_t* copyuvm(pde_t*,uint); +void switchuvm(struct proc*); +void switchkvm(); + // number of elements in fixed-size array #define NELEM(x) (sizeof(x)/sizeof((x)[0])) - |