98 lines
3.1 KiB
C
Executable File
98 lines
3.1 KiB
C
Executable File
/******************************************************************************
|
|
*
|
|
* ux74f.h - include for ux74f
|
|
*
|
|
* Module %M% Version %I% Date %H%
|
|
*
|
|
* (c) Copyright 1998 Ardent Software Inc. - All Rights Reserved
|
|
* This is unpublished proprietary source code of Ardent Software Inc.
|
|
* The copyright notice above does not evidence any actual or intended
|
|
* publication of such source code.
|
|
*
|
|
*******************************************************************************
|
|
*
|
|
* Maintenence log - insert most recent change descriptions at top
|
|
*
|
|
* Date.... GTAR# WHO Description.........................................
|
|
* 10/14/98 23801 SAP Change copyrights.
|
|
* 06/12/96 18335 PNV Original scadmin for port of 911 to Siemens Nixdorf.
|
|
*
|
|
******************************************************************************/
|
|
#include "uv.h"
|
|
|
|
#define signedchar char
|
|
|
|
#define Libre ((signedchar)(-1))
|
|
#define FinChaine ('\000')
|
|
|
|
#define UVSemMP (key_t)(0x11223344)
|
|
#define UVMemPart (key_t)(0x22334455)
|
|
#define UVBal00 (key_t)(0x12345670)
|
|
#define UVBal01 (key_t)(0x12345671)
|
|
#define UVBal02 (key_t)(0x12345672)
|
|
#define UVBal03 (key_t)(0x12345673)
|
|
#define UVBal04 (key_t)(0x12345674)
|
|
#define UVBal05 (key_t)(0x12345675)
|
|
#define UVBal06 (key_t)(0x12345676)
|
|
#define UVBal07 (key_t)(0x12345677)
|
|
#define UVBal08 (key_t)(0x12345678)
|
|
#define UVBal09 (key_t)(0x12345679)
|
|
#define UVBal10 (key_t)(0x1234567a)
|
|
#define UVBal11 (key_t)(0x1234567b)
|
|
#define UVBal12 (key_t)(0x1234567c)
|
|
#define UVBal13 (key_t)(0x1234567d)
|
|
#define UVBal14 (key_t)(0x1234567e)
|
|
#define UVBal15 (key_t)(0x1234567f)
|
|
|
|
#define NombreSemaphore 16 /* attention multiple de 4 */
|
|
#define NombreProcessus 256 /* attention multiple de 4 */
|
|
#define TailleNomSemaphore 24 /* attention multiple de 4 */
|
|
#define TailleNomProcessus 12 /* attention multiple de 4 */
|
|
#define TailleTableSemProcessus ((NombreSemaphore*TailleNomSemaphore)+\
|
|
(NombreProcessus*TailleNomProcessus))
|
|
#define UVTailleMemPart ((TailleTableSemProcessus)+\
|
|
(sizeof(struct uvtr)*NombreSemaphore))
|
|
#define UVNombreSem 1
|
|
|
|
#define Fini(m) {UVDeverrouiller();printf("%s::\n",m);exit(0);}
|
|
|
|
union semun {
|
|
int val;
|
|
struct semid_ds *buf;
|
|
ushort *array;
|
|
};
|
|
struct UVmsgbuf {
|
|
long UVmtype; /* message type */
|
|
signedchar UVmtext[40]; /* message text */
|
|
};
|
|
struct uvtr {
|
|
int ListeProcessus[NombreProcessus];
|
|
int NombreMessage;
|
|
};
|
|
|
|
extern int IdSem;
|
|
extern int IdMemPart;
|
|
extern int IdBal;
|
|
|
|
extern union semun semctl_arg;
|
|
extern struct sembuf sops;
|
|
extern struct semid_ds ssemid;
|
|
extern struct shmid_ds sshmid;
|
|
extern signedchar *UVAdMemPart;
|
|
extern struct msqid_ds smesid;
|
|
extern int NumBal;
|
|
extern int NumProcessus;
|
|
extern signedchar *NomSemaphore;
|
|
extern signedchar *NomProcessus;
|
|
extern key_t UVTabNomBal[];
|
|
extern signedchar *Semaphore;
|
|
extern signedchar *Processus;
|
|
extern signedchar *Code;
|
|
extern int CodeNum;
|
|
extern signedchar *Message;
|
|
extern signedchar *Destinataire;
|
|
extern signedchar *Tempo;
|
|
extern int TempoNum;
|
|
extern struct uvtr *UVTableRelations;
|
|
extern signedchar Lettre[];
|