diff options
author | rsc <rsc> | 2007-08-22 06:01:32 +0000 |
---|---|---|
committer | rsc <rsc> | 2007-08-22 06:01:32 +0000 |
commit | eaea18cb9cbb86018dae8f1decfa217ecbe85fa5 (patch) | |
tree | 98c4a9b852ad9b6aaf16016417cf5eeee0b3857e /defs.h | |
parent | 3dcf889c1b5c2c5ddf5b4756f2a731c344f6f08e (diff) | |
download | xv6-labs-eaea18cb9cbb86018dae8f1decfa217ecbe85fa5.tar.gz xv6-labs-eaea18cb9cbb86018dae8f1decfa217ecbe85fa5.tar.bz2 xv6-labs-eaea18cb9cbb86018dae8f1decfa217ecbe85fa5.zip |
PDF at http://am.lcs.mit.edu/~rsc/xv6.pdf
Various changes made while offline.
+ bwrite sector argument is redundant; use b->sector.
+ reformatting of files for nicer PDF page breaks
+ distinguish between locked, unlocked inodes in type signatures
+ change FD_FILE to FD_INODE
+ move userinit (nee proc0init) to proc.c
+ move ROOTDEV to param.h
+ always parenthesize sizeof argument
Diffstat (limited to 'defs.h')
-rw-r--r-- | defs.h | 28 |
1 files changed, 15 insertions, 13 deletions
@@ -24,6 +24,7 @@ int proc_kill(int); int proc_wait(void); void yield(void); void procdump(void); +void userinit(void); // setjmp.S struct jmpbuf; @@ -117,30 +118,31 @@ void ide_rw(int, uint, void*, uint, int); void binit(void); struct buf; struct buf* bread(uint, uint); -void bwrite(struct buf*, uint); +void bwrite(struct buf*); void brelse(struct buf*); // fs.c struct inode; +struct uinode; void iinit(void); -void ilock(struct inode*); -void iunlock(struct inode*); -void idecref(struct inode*); -struct inode* iincref(struct inode*); -void iput(struct inode*); -struct inode* namei(char*); +struct inode* ilock(struct uinode*); +struct uinode* iunlock(struct inode*); +void iput(struct uinode*); +struct uinode* idup(struct uinode*); +struct uinode* namei(char*); void stati(struct inode*, struct stat*); int readi(struct inode*, char*, uint, uint); int writei(struct inode*, char*, uint, uint); -struct inode* mknod(char*, short, short, short); -int unlink(char*); -int link(char*, char*); -struct inode* igetroot(void); -int mkdir(char *path); -struct inode* create(char *path); +int dirlink(struct inode *dp, char *name, uint ino); +struct uinode* dirlookup(struct inode *dp, char *name, uint *poff); +void iupdate(struct inode *ip); +int namecmp(const char *s, const char *t); +struct uinode* ialloc(uint, short); +struct uinode* nameiparent(char *path, char *name); // exec.c int exec(char*, char**); // number of elements in fixed-size array #define NELEM(x) (sizeof(x)/sizeof((x)[0])) + |