1*9936bffaSrsc struct file { 2*9936bffaSrsc enum { FD_CLOSED, FD_NONE, FD_PIPE, FD_FILE } type; 3*9936bffaSrsc int ref; // reference count 4*9936bffaSrsc char readable; 5*9936bffaSrsc char writable; 6*9936bffaSrsc struct pipe *pipe; 7*9936bffaSrsc struct inode *ip; 8*9936bffaSrsc uint off; 9*9936bffaSrsc }; 10