summaryrefslogtreecommitdiff
path: root/kernel/defs.h
diff options
context:
space:
mode:
authorMole Shang <[email protected]>2024-01-18 17:35:27 +0800
committerMole Shang <[email protected]>2024-02-05 18:10:56 +0800
commit283d5ab4c964ab525e45fcade06d6fd7e977c43e (patch)
treebc44a1e2c447fb965cf5d5c2cfdcfa71658dbbbf /kernel/defs.h
parent0d6a64fa06ce6aae729fa05a539eadd88fa59007 (diff)
downloadxv6-labs-283d5ab4c964ab525e45fcade06d6fd7e977c43e.tar.gz
xv6-labs-283d5ab4c964ab525e45fcade06d6fd7e977c43e.tar.bz2
xv6-labs-283d5ab4c964ab525e45fcade06d6fd7e977c43e.zip
lab syscall: finish
Conflicts: kernel/syscall.c kernel/syscall.h user/user.h user/usys.pl
Diffstat (limited to 'kernel/defs.h')
-rw-r--r--kernel/defs.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/defs.h b/kernel/defs.h
index a3c962b..c8eeef3 100644
--- a/kernel/defs.h
+++ b/kernel/defs.h
@@ -8,6 +8,7 @@ struct spinlock;
struct sleeplock;
struct stat;
struct superblock;
+struct sysinfo;
// bio.c
void binit(void);
@@ -63,6 +64,7 @@ void ramdiskrw(struct buf*);
void* kalloc(void);
void kfree(void *);
void kinit(void);
+int get_freemem(void);
// log.c
void initlog(int, struct superblock*);
@@ -106,6 +108,7 @@ void yield(void);
int either_copyout(int user_dst, uint64 dst, void *src, uint64 len);
int either_copyin(void *dst, int user_src, uint64 src, uint64 len);
void procdump(void);
+int get_nproc(void);
// swtch.S
void swtch(struct context*, struct context*);
@@ -141,6 +144,9 @@ int fetchstr(uint64, char*, int);
int fetchaddr(uint64, uint64*);
void syscall();
+// sysinfo.c
+int sys_info(uint64);
+
// trap.c
extern uint ticks;
void trapinit(void);