version 1.2, 1999/11/02 06:11:58 |
version 1.7, 2000/01/05 06:09:11 |
|
|
/* -*- mode: C; coding: euc-japan -*- */ |
/* -*- mode: C; coding: euc-japan -*- */ |
/* $OpenXM$ */ |
/* $OpenXM: OpenXM/src/ox_math/serv1.c,v 1.6 1999/11/29 12:09:58 ohara Exp $ */ |
/* $Id$ */ |
|
|
|
#include <stdio.h> |
#include <stdio.h> |
#include <stdlib.h> |
#include <stdlib.h> |
|
|
|
|
static int send_ox_sync_ball(int fd); |
static int send_ox_sync_ball(int fd); |
|
|
extern MLINK lp; |
|
static int sv_read = 3; |
static int sv_read = 3; |
static int sv_write = 4; |
static int sv_write = 4; |
|
|
static int flag_sigusr1 = 0; |
static int flag_sigusr1 = 0; |
static int flag_sigusr2 = 0; |
static int flag_sigusr2 = 0; |
|
|
/* 1 のとき割り込み禁止 */ |
/* if in_critical equals to 1 then we do not permit an interrupt. */ |
static int in_critical = 0; |
static int in_critical = 0; |
|
|
static int set_critical() |
static int set_critical() |
Line 81 static int exchange_ox_syncball(int fd) |
|
Line 79 static int exchange_ox_syncball(int fd) |
|
fprintf(stderr, "received a sync_ball.\n"); |
fprintf(stderr, "received a sync_ball.\n"); |
} |
} |
|
|
/* スタックマシン部分 */ |
/* a part of stack machine. */ |
int receive_ox(int fd_read, int fd_write) |
int receive_ox(int fd_read, int fd_write) |
{ |
{ |
int tag; |
int tag; |
Line 106 int receive_ox(int fd_read, int fd_write) |
|
Line 104 int receive_ox(int fd_read, int fd_write) |
|
return 0; |
return 0; |
} |
} |
|
|
|
int shutdown() |
|
{ |
|
close(sv_read); |
|
close(sv_write); |
|
ml_exit(); |
|
exit(0); |
|
} |
|
|
int main() |
int main() |
{ |
{ |
MATH_init(); |
ml_init(); |
initialize_stack(); |
initialize_stack(); |
|
|
signal(SIGUSR1, handler_reset1); |
signal(SIGUSR1, handler_reset1); |
signal(SIGKILL, handler_kill); |
signal(SIGKILL, handler_kill); |
|
|
/* バイトオーダの決定 */ |
decideByteOrderServer(sv_read, 0); |
decideByteOrder2(sv_read, sv_write, 0); |
|
|
|
while(1) { |
while(1) { |
receive_ox(sv_read, sv_write); |
receive_ox(sv_read, sv_write); |
|
|
already_send_ox_sync_ball = 0; |
already_send_ox_sync_ball = 0; |
} |
} |
} |
} |
MATH_exit(); |
shutdown(); |
} |
} |