From 2731f3184169536bbbc15edb09534323f19e97ba Mon Sep 17 00:00:00 2001 From: Oliver Lehmann Date: Fri, 26 May 1989 16:48:04 +0000 Subject: [PATCH] ING_DB --- WEGA/contrib/ingres/dbs/src/sys/p_master | Bin 0 -> 8430 bytes WEGA/contrib/ingres/dbs/src/sys/p_master.c | 83 +++++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100755 WEGA/contrib/ingres/dbs/src/sys/p_master create mode 100644 WEGA/contrib/ingres/dbs/src/sys/p_master.c diff --git a/WEGA/contrib/ingres/dbs/src/sys/p_master b/WEGA/contrib/ingres/dbs/src/sys/p_master new file mode 100755 index 0000000000000000000000000000000000000000..94fd01a5653d4ce9a824ca30c725d4a1805fad9b GIT binary patch literal 8430 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 JnT}wv{{mck;}ie@ literal 0 HcmV?d00001 diff --git a/WEGA/contrib/ingres/dbs/src/sys/p_master.c b/WEGA/contrib/ingres/dbs/src/sys/p_master.c new file mode 100644 index 0000000..f9d891d --- /dev/null +++ b/WEGA/contrib/ingres/dbs/src/sys/p_master.c @@ -0,0 +1,83 @@ +# include + +# define TTYS 5 + +char tty[] = "/dev/tty_"; + +main(argc, argv) +int argc; +char *argv[]; +{ + register int i; + register int *pid; + register int run; + register int proc; + int code; + int want[TTYS]; + char buf[BUFSIZ]; + + setbuf(stdout, buf); + proc = 0; + for (run = 1; run < TTYS; run++) + { + tty[8] = run + '0'; + dup2((i = open(tty, 2)), 0); + dup2(i, 1); + close(i); + if ((i = fork()) < 0) + { + printf("fork proc %d failed\n", run); + fflush(stdout); + exit(2 * run + 1); + } + printf("fork proc %d\n", run); + fflush(stdout); + if (!i) + { + argv[0][0] = run + '0'; + argv[0][1] = 0; + argv[1] = (char *) 0; + printf("exec proc %d\n", run); + fflush(stdout); + execvp("p_slave", argv); + printf("exec proc %d failed\n", run); + fflush(stdout); + exit(2 * run + 2); + } + proc++; + } + + run = 0; + for (pid = &want[TTYS]; pid > want; ) + *(--pid) = 0; + + while ((i = wait(&code)) > 0) + { + printf("p_master %d=wait(%d)\n", i, code); + fflush(stdout); + pid = want; + if ((code & 0377) == 0177) + { + if (!run) + ptrace(7, run = i, 1, 0); + else if (run == i) + { + ptrace(7, run = *pid, 1, 0); + for (pid = want; pid < &want[TTYS]; pid++) + *pid = pid[1]; + } + else + { + while (*pid) + pid++; + *pid = i; + } + } + else if (!--proc) + { + printf("p_master exit(0)\n"); + fflush(stdout); + exit(0); + } + } +}