- Timestamp:
- Nov 8, 2004, 10:57:37 AM (21 years ago)
- Location:
- trunk/src/emx
- Files:
-
- 2 added
- 6 edited
-
include/InnoTekLIBC/backend.h (modified) (2 diffs, 1 prop)
-
include/InnoTekLIBC/sharedpm.h (modified) (1 diff, 1 prop)
-
include/InnoTekLIBC/thread.h (modified) (1 diff, 1 prop)
-
include/sys/wait.h (modified) (1 diff, 1 prop)
-
src/lib/process/beginthr.c (modified) (3 diffs, 1 prop)
-
src/lib/process/waitid.c (added)
-
src/lib/sys/b_processWait.c (added)
-
src/lib/sys/sharedpm.c (modified) (1 diff, 1 prop)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/include/InnoTekLIBC/backend.h
-
Property cvs2svn:cvs-rev
changed from
1.11to1.12
r1626 r1627 30 30 #include <sys/cdefs.h> 31 31 #include <sys/types.h> 32 33 34 32 35 #include <signal.h> 33 36 #include <emx/io.h> … … 657 660 /** @} */ 658 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 659 685 __END_DECLS 660 686 -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/include/InnoTekLIBC/sharedpm.h
-
Property cvs2svn:cvs-rev
changed from
1.14to1.15
r1626 r1627 550 550 551 551 /** 552 553 554 555 556 557 558 559 560 561 562 563 552 564 * Locks the LIBC shared memory for short exclusive access. 553 565 * The call must call __libc_spmUnlock() as fast as possible and make -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/include/InnoTekLIBC/thread.h
-
Property cvs2svn:cvs-rev
changed from
1.9to1.10
r1626 r1627 545 545 void (*__libc_TLSGetDestructor(int iTLSIndex, unsigned *pfFlags))(void *, int, unsigned); 546 546 547 548 549 547 550 /** @} */ 548 551 -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/include/sys/wait.h
-
Property cvs2svn:cvs-rev
changed from
1.4to1.5
r1626 r1627 1 /* sys/wait.h (emx+gcc) */ 1 /*- 2 * Copyright (c) 1982, 1986, 1989, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 4. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * @(#)wait.h 8.2 (Berkeley) 7/10/94 30 * $FreeBSD: src/sys/sys/wait.h,v 1.20 2004/04/09 13:14:32 bde Exp $ 31 */ 2 32 3 #ifndef _SYS_WAIT_H 4 #define _SYS_WAIT_H 33 #ifndef _SYS_WAIT_H 34 #define _SYS_WAIT_H 5 35 6 #if defined (__cplusplus) 7 extern "C" { 36 #include <sys/cdefs.h> 37 38 /* 39 * This file holds definitions relevant to the wait4 system call and the 40 * alternate interfaces that use it (wait, wait3, waitpid). 41 */ 42 43 /* 44 * Macros to test the exit status returned by wait and extract the relevant 45 * values. 46 */ 47 #if __BSD_VISIBLE 48 #define _W_INT(w) (*(int *)&(w)) /* Convert union wait to int. */ 49 #define WCOREFLAG 0200 50 #else 51 #define _W_INT(i) (i) 8 52 #endif 9 53 10 #define WNOHANG 1 11 #define WUNTRACED 2 54 #define _WSTATUS(x) (_W_INT(x) & 0177) 55 #define _WSTOPPED 0177 /* _WSTATUS if process is stopped */ 56 #define WIFSTOPPED(x) (_WSTATUS(x) == _WSTOPPED) 57 #define WSTOPSIG(x) (_W_INT(x) >> 8) 58 #define WIFSIGNALED(x) (_WSTATUS(x) != _WSTOPPED && _WSTATUS(x) != 0) 59 #define WTERMSIG(x) (_WSTATUS(x)) 60 #define WIFEXITED(x) (_WSTATUS(x) == 0) 61 #define WEXITSTATUS(x) (_W_INT(x) >> 8) 62 #define WIFCONTINUED(x) (x == 0x13) /* 0x13 == SIGCONT */ 63 #if __BSD_VISIBLE 64 #define WCOREDUMP(x) (_W_INT(x) & WCOREFLAG) 12 65 13 #define WIFEXITED(st) (((st) & 0x7f) == 0) 14 #define WIFSIGNALED(st) (((st) & 0x7f) != 0x7f && ((st) & 0x7f) != 0) 15 #define WIFSTOPPED(st) (((st) & 0x7f) == 0x7f) 16 17 #define WEXITSTATUS(st) ((st) >> 8) 18 #define WTERMSIG(st) ((st) & 0x7f) 19 #define WSTOPSIG(st) ((st) >> 8) 20 21 int wait (int *); 22 int waitpid (int, int *, int); 23 24 #if !defined (_POSIX_SOURCE) || defined (_WITH_UNDERSCORE) || defined(__USE_EMX) 25 26 int _wait (int *); 27 int _waitpid (int, int *, int); 28 66 #define W_EXITCODE(ret, sig) ((ret) << 8 | (sig)) 67 #define W_STOPCODE(sig) ((sig) << 8 | _WSTOPPED) 29 68 #endif 30 69 31 #if defined (__cplusplus) 32 } 70 /* 71 * Option bits for the third argument of wait4. WNOHANG causes the 72 * wait to not hang if there are no stopped or terminated processes, rather 73 * returning an error indication in this case (pid==0). WUNTRACED 74 * indicates that the caller should receive status about untraced children 75 * which stop due to signals. If children are stopped and a wait without 76 * this option is done, it is as though they were still running... nothing 77 * about them is returned. 78 */ 79 #define WNOHANG 1 /* Don't hang in wait. */ 80 #define WUNTRACED 2 /* Tell about stopped, untraced children. */ 81 #define WCONTINUED 4 /* Report a job control continued process. */ 82 83 #if 0 /* bird: old __BSD_VISIBLE */ 84 #define WLINUXCLONE 0x80000000 /* Wait for kthread spawned from linux_clone. */ 33 85 #endif 34 86 35 #endif /* not SYS_WAIT_H */ 87 /* 88 * Tokens for special values of the "pid" parameter to wait4. 89 */ 90 #if __BSD_VISIBLE 91 #define WAIT_ANY (-1) /* any process */ 92 #define WAIT_MYPGRP 0 /* any process in my process group */ 93 #endif /* __BSD_VISIBLE */ 94 95 #ifdef _KERNEL 96 struct rusage; 97 int kern_wait(struct thread *td, pid_t pid, int *status, int options, 98 struct rusage *rup); 99 #else /* !_KERNEL */ 100 #include <sys/types.h> 101 102 __BEGIN_DECLS 103 pid_t wait(int *); 104 pid_t waitpid(pid_t, int *, int); 105 #if 0 /* bird: old __BSD_VISIBLE */ 106 struct rusage; 107 pid_t wait3(int *, int, struct rusage *); 108 pid_t wait4(pid_t, int *, int, struct rusage *); 109 #endif 110 111 112 /* 113 * bird: LIBC additions - start. 114 */ 115 #if __XSI_VISIBLE 116 #include <signal.h> 117 118 /** Wait for processes that have exited. */ 119 #define WEXITED 8 120 /** Wait for processes that have stopped. */ 121 #define WSTOPPED 16 122 /** Keep the wait state around for later wait calls, i.e. just peek at the stuff. */ 123 #define WNOWAIT 32 124 125 /* The following values are used by the `waitid' function. */ 126 typedef enum 127 { 128 /** Wait for any child process. */ 129 P_ALL, 130 /** Wait for a specific process. */ 131 P_PID, 132 /** Wait for processes of a process group. */ 133 P_PGID 134 } idtype_t; 135 136 int waitid(idtype_t, id_t, siginfo_t *, int); 137 #endif /* __XSI_VISIBLE */ 138 139 /* 140 * bird: LIBC additions - end. 141 */ 142 143 __END_DECLS 144 #endif /* _KERNEL */ 145 146 #endif /* !_SYS_WAIT_H_ */ -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/src/lib/process/beginthr.c
-
Property cvs2svn:cvs-rev
changed from
1.11to1.12
r1626 r1627 47 47 48 48 49 int _beginthread(void (*pfnStart)(void *), void *pvStack, unsigned cbStack, void *pvArg) 49 /* move me !! */ 50 int __libc_back_threadCreate(void (*pfnStart)(void *), unsigned cbStack, void *pvArg, int fInternal) 50 51 { 51 LIBCLOG_ENTER("pfnStart=%p pvStart=%p cbStack=%d pvArg=%p\n", (void *)pfnStart, pvStack, cbStack, pvArg);52 LIBCLOG_ENTER("pfnStart=%p ); 52 53 int rc; 53 54 TID tid; … … 68 69 * Set the startup thread info and create a new thread. 69 70 */ 71 70 72 pThrd->u.startup.pfnStart = pfnStart; 71 73 pThrd->u.startup.pvArg = pvArg; … … 94 96 } 95 97 98 99 100 101 102 103 104 105 106 107 96 108 97 109 void _endthread(void) -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/src/lib/sys/sharedpm.c
-
Property cvs2svn:cvs-rev
changed from
1.17to1.18
r1626 r1627 188 188 LIBCLOG_RETURN_VOID(); 189 189 } 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 190 244 191 245 #ifdef TIMEBOMB -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.
