home *** CD-ROM | disk | FTP | other *** search
- /*
- proc.h
- */
- /* Copyright (c) 1994 Christian F. Tschudin. All rights reserved.
-
- Distributed under the terms of the GNU General Public License
- version 2 of june 1991 as published by the Free Software
- Foundation, Inc.
-
- This file is part of M0.
-
- M0 is distributed in the hope that it will be useful, but WITHOUT ANY
- WARRANTY. No author or distributor accepts responsibility to anyone for
- the consequences of using it or for whether it serves any particular
- purpose or works at all, unless he says so in writing. Refer to the GNU
- General Public License for full details.
-
- Everyone is granted permission to copy, modify and redistribute M0, but
- only under the conditions described in the GNU General Public License.
- A copy of this license is supposed to have been given to you along with
- M0 so you can know your rights and responsibilities. It should be in a
- file named LICENSE. Among other things, the copyright notice and this
- notice must be preserved on all copies. */
-
- #ifndef PROC_H
- #define PROC_H
-
- #include "error.h"
- #include "element.h"
-
- #define MAXOSTACK 300
- #define MAXDSTACK 16
- #define MAXESTACK 100
-
- struct mproc_s {
- ushort pid;
- struct element_s local[MAXLOCALS];
- sshort os[MAXOSTACK];
- sshort ds[MAXDSTACK];
- sshort es[MAXESTACK];
- ushort osp, dsp, esp;
- byte state;
- eindex err_element;
- retcode last_error;
- mproc next, last, qtail, timelink;
- eindex qkey, timeout;
- };
-
- enum {
- S_RUNNING, S_BLOCKED, S_TERMINATED
- };
-
-
- #endif
-
-
-
-