Subversion Repositories HelenOS

Rev

Rev 2404 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2404 Rev 2435
1
/*
1
/*
2
 * Copyright (c) 1987,1997, Prentice Hall
2
 * Copyright (c) 1987,1997, Prentice Hall
3
 * All rights reserved.
3
 * All rights reserved.
4
 *
4
 *
5
 * Redistribution and use of the MINIX operating system in source and
5
 * Redistribution and use of the MINIX operating system in source and
6
 * binary forms, with or without modification, are permitted provided
6
 * binary forms, with or without modification, are permitted provided
7
 * that the following conditions are met:
7
 * that the following conditions are met:
8
 
8
 
9
 * - Redistributions of source code must retain the above copyright
9
 * - Redistributions of source code must retain the above copyright
10
 *   notice, this list of conditions and the following disclaimer.
10
 *   notice, this list of conditions and the following disclaimer.
11
 
11
 
12
 * - Redistributions in binary form must reproduce the above
12
 * - Redistributions in binary form must reproduce the above
13
 *   copyright notice, this list of conditions and the following
13
 *   copyright notice, this list of conditions and the following
14
 *   disclaimer in the documentation and/or other materials provided
14
 *   disclaimer in the documentation and/or other materials provided
15
 *   with the distribution.
15
 *   with the distribution.
16
 
16
 
17
 * - Neither the name of Prentice Hall nor the names of the software
17
 * - Neither the name of Prentice Hall nor the names of the software
18
 *   authors or contributors may be used to endorse or promote
18
 *   authors or contributors may be used to endorse or promote
19
 *   products derived from this software without specific prior
19
 *   products derived from this software without specific prior
20
 *   written permission.
20
 *   written permission.
21
 
21
 
22
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS, AUTHORS, AND
22
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS, AUTHORS, AND
23
 * CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
23
 * CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
24
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
25
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
26
 * IN NO EVENT SHALL PRENTICE HALL OR ANY AUTHORS OR CONTRIBUTORS BE
26
 * IN NO EVENT SHALL PRENTICE HALL OR ANY AUTHORS OR CONTRIBUTORS BE
27
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
29
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
30
 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30
 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
31
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
31
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
32
 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
32
 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
33
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
 */
34
 */
35
 
35
 
36
/* This is the per-process information.  A slot is reserved for each potential
36
/** @addtogroup FileSystemImpl
-
 
37
* @{
-
 
38
*/
-
 
39
 
-
 
40
/**
37
 * process.
41
 * @file    fproc.h
-
 
42
 * @brief Per-process information definition
38
 */
43
 */
39
 
44
 
40
   
45
   
41
#ifndef _FPROC_H
46
#ifndef _FPROC_H
42
#define _FPROC_H
47
#define _FPROC_H
43
 
48
 
-
 
49
/**
-
 
50
 * This is the per-process information.  A slot is reserved for each potential process.
-
 
51
 */      
44
typedef struct {
52
typedef struct {
45
      inode_t *fp_workdir;     /* pointer to working directory's inode */
53
      inode_t *fp_workdir;     /**< pointer to working directory's inode */
46
      inode_t *fp_rootdir;     /* pointer to current root dir (see chroot) */
54
      inode_t *fp_rootdir;     /**< pointer to current root dir (see chroot) */
47
      filp_t *fp_filp[OPEN_MAX];/* the file descriptor table */
55
      filp_t *fp_filp[OPEN_MAX];/**< the file descriptor table */
48
      int fp_cum_io_partial;    /* partial byte count if read can't finish */
56
      int fp_cum_io_partial;    /**< partial byte count if read can't finish */
49
      pid_t fp_pid;             /* process id */
57
      pid_t fp_pid;             /**< process id */
50
      int connected;        /* is connection valid? */
58
      int connected;        /**< is connection valid? */
51
      void *buffer;         /* buffer for data */
59
      void *buffer;         /**< buffer for data */
52
    } fproc_t;
60
    } fproc_t;
53
 
61
 
54
extern fproc_t fproc[NR_PROCS];
62
extern fproc_t fproc[NR_PROCS];
55
 
63
 
56
#endif /* _FPROC_H */
64
#endif /* _FPROC_H */
57
 
65
 
-
 
66
 
-
 
67
/**
-
 
68
 * }
-
 
69
 */
-
 
70
 
58
 
71