Mercurial > hg > CbC > CbC_xv6
comparison src/interface/fs.dg @ 294:08a367c3124a
add FileSystem files
author | menikon |
---|---|
date | Wed, 29 Jan 2020 15:58:12 +0900 |
parents | |
children | 2fcabbf8ceda |
comparison
equal
deleted
inserted
replaced
293:a7fc5edea925 | 294:08a367c3124a |
---|---|
1 typedef struct fs<Type,Impl> { | |
2 union Data* fs; | |
3 int dev; | |
4 struct superblock* sb; | |
5 uint dev; | |
6 short type; | |
7 struct inode* ip; | |
8 struct stat* st; | |
9 char* dst; | |
10 uint off; | |
11 uint n; | |
12 const char* s; | |
13 const char* t; | |
14 struct inode* dp; | |
15 char* name; | |
16 uint* poff; | |
17 uint inum; | |
18 char* path; | |
19 | |
20 __code readsb(Impl* fs, int dev, struct superblock* sb, __code next(...)); | |
21 __code iinit(Impl* fs, __code next(...)); | |
22 __code ialloc(Impl* fs, uint dev, short type, __code next(...)); | |
23 __code iupdate(Impl* fs, struct inode* ip, __code next(...)); | |
24 __code idup(Impl* fs, struct inode* ip, __code next(...)); | |
25 __code ilock(Impl* fs, struct inode* ip, __code next(...)); | |
26 __code iunlock(Impl* fs, struct inode* ip, __code next(...)); | |
27 __code iput(Impl* fs, struct inode* ip, __code next(...)); | |
28 __code iunlockput(Impl* fs, struct inode* ip, __code next(...)); | |
29 __code stati(Impl* fs , struct inode* ip, struct stat* st, __code next(...)); | |
30 __code readi(Impl* fs, struct inode* ip, char* dst, uint off, uint n, __code next(...)); | |
31 __code writei(Impl* fs, struct inode* ip, char* src, uint off, uint n, __code next(...)); | |
32 __code namecmp(Impl* fs, const char* s, const char* t, __code next(...)); | |
33 __code dirlookup(struct inode* dp, char* name, uint* poff, __code next(...)); | |
34 __code dirlink (Impl* fs, struct inode* dp, char* name, uint inum, __code next(...)); | |
35 __code namei(Impl* fs, char* path, __code next(...)); | |
36 __code nameiparent(Impl* fs, char* path, char* name, __code next(...)); | |
37 | |
38 } fs; |