⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fproc.h

📁 一个简单的操作系统minix的核心代码
💻 H
字号:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
				src/fs/fproc.h	 	 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

20000	/* This is the per-process information.  A slot is reserved for each potential
20001	 * process. Thus NR_PROCS must be the same as in the kernel. It is not possible
20002	 * or even necessary to tell when a slot is free here.
20003	 */
20004	
20005	
20006	EXTERN struct fproc {
20007	  mode_t fp_umask;              /* mask set by umask system call */
20008	  struct inode *fp_workdir;     /* pointer to working directory's inode */
20009	  struct inode *fp_rootdir;     /* pointer to current root dir (see chroot) */
20010	  struct filp *fp_filp[OPEN_MAX];/* the file descriptor table */
20011	  uid_t fp_realuid;             /* real user id */
20012	  uid_t fp_effuid;              /* effective user id */
20013	  gid_t fp_realgid;             /* real group id */
20014	  gid_t fp_effgid;              /* effective group id */
20015	  dev_t fp_tty;                 /* major/minor of controlling tty */
20016	  int fp_fd;                    /* place to save fd if rd/wr can't finish */
20017	  char *fp_buffer;              /* place to save buffer if rd/wr can't finish*/
20018	  int  fp_nbytes;               /* place to save bytes if rd/wr can't finish */
20019	  int  fp_cum_io_partial;       /* partial byte count if rd/wr can't finish */
20020	  char fp_suspended;            /* set to indicate process hanging */
20021	  char fp_revived;              /* set to indicate process being revived */
20022	  char fp_task;                 /* which task is proc suspended on */
20023	  char fp_sesldr;               /* true if proc is a session leader */
20024	  pid_t fp_pid;                 /* process id */
20025	  long fp_cloexec;              /* bit map for POSIX Table 6-2 FD_CLOEXEC */
20026	} fproc[NR_PROCS];
20027	
20028	/* Field values. */
20029	#define NOT_SUSPENDED      0    /* process is not suspended on pipe or task */
20030	#define SUSPENDED          1    /* process is suspended on pipe or task */
20031	#define NOT_REVIVING       0    /* process is not being revived */
20032	#define REVIVING           1    /* process is being revived from suspension */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -