source: branches/minix3-book/servers/fs/file.h@ 23

Last change on this file since 23 was 4, checked in by Mattia Monga, 14 years ago

Importazione sorgenti libro

File size: 958 bytes
Line 
1/* This is the filp table. It is an intermediary between file descriptors and
2 * inodes. A slot is free if filp_count == 0.
3 */
4
5EXTERN struct filp {
6 mode_t filp_mode; /* RW bits, telling how file is opened */
7 int filp_flags; /* flags from open and fcntl */
8 int filp_count; /* how many file descriptors share this slot?*/
9 struct inode *filp_ino; /* pointer to the inode */
10 off_t filp_pos; /* file position */
11
12 /* the following fields are for select() and are owned by the generic
13 * select() code (i.e., fd-type-specific select() code can't touch these).
14 */
15 int filp_selectors; /* select()ing processes blocking on this fd */
16 int filp_select_ops; /* interested in these SEL_* operations */
17
18 /* following are for fd-type-specific select() */
19 int filp_pipe_select_ops;
20} filp[NR_FILPS];
21
22#define FILP_CLOSED 0 /* filp_mode: associated device closed */
23
24#define NIL_FILP (struct filp *) 0 /* indicates absence of a filp slot */
Note: See TracBrowser for help on using the repository browser.