|
|
1.1 root 1: /* (-lgl
2: * COHERENT Version 4.1.0
3: * Copyright (c) 1982, 1992 by Mark Williams Company.
4: * All rights reserved. May not be copied without permission.
5: -lgl) */
6: /*
7: * ipcs.h
8: */
9: #include <sys/sem.h>
10: #include <sys/msg.h>
11: #include <sys/shm.h>
12:
13:
14: #define KERNEL /* Necessary for the fifo stuff to read */
15: #include <sys/typed.h> /* /dev/boot_gift. */
16:
17: #define DEFAULT_KERNEL "/coherent" /* default kernel image to read */
18: #define OBSCENE_VALUE 100
19:
20: #define VERSION "0.02"
21:
22: /*
23: * shared memory stuff
24: */
25: struct shmid_ds *shmid; /* array of shmid_ds structs */
26: int *valid_shmid; /* keep track of valid shared memory
27: segments found */
28: /*
29: * semaphore stuff
30: */
31: struct semid_ds semid[OBSCENE_VALUE]; /* array of semaphore structs */
32: int valid_semid[OBSCENE_VALUE]; /* track validly located semaphores */
33:
34: /*
35: * message queue stuff
36: */
37: extern struct msqid_ds *msqbuf; /* array of message queue structs */
38:
39: /* Functions */
40: extern int get_data(); /* Get ipc data */
41: extern int get_msg_stats(); /* get message queue stats */
42: extern int get_shm_stats(); /* get shared memory stats */
43: extern int get_sem_stats(); /* get semaphore stats */
44: extern int print_q(); /* print message queue stats */
45: extern int print_m(); /* print shared memory stats */
46: extern int print_s(); /* printf semaphore stats */
47: extern char * pick_nfile(); /* get name of boot kernel from /tboot */
48: extern FIFO * fifo_open(); /* open /dev/boot_gift */
49: extern int fifo_close(); /* close boot_gift */
50: extern typed_space * fifo_read(); /* read boot_gift */
51: extern int iMemSeek(); /* Seek in the virtual memory */
52: /* Option's flags. See man pages for more info */
53: extern short qflag, /* message q */
54: mflag, /* shared memory */
55: sflag, /* semaphores */
56: bflag, /* biggest */
57: cflag, /* creator name */
58: oflag, /* outstanding usage */
59: pflag, /* process ID */
60: tflag, /* time */
61: aflag, /* include b, c, o, p, & t */
62: Cflag, /* corefile */
63: Nflag; /* namelist */
64:
65: extern int total_shmids, /* total valid shared memory segs found */
66: total_sems, /* total valid semaphores found */
67: usemsqs; /* is msqs in use */
68:
69: extern int SHMMNI, /* max # of shared memory segments allowed */
70: SEMMNI, /* max # of semaphores allowed */
71: NMSQID; /* max # of message queues */
72:
73: extern char *fname; /* name of the namelist file */
74: extern struct msqid_ds *msqbuf;/* pointer to the message q data */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.