⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pidstatus.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
字号:
/* pidstatus.c - report child's status */#include "../h/mh.h"#include <signal.h>#include <stdio.h>#ifndef	BSD42static char *sigs[] = {    NULL,    "Hangup",    "Interrupt",    "Quit",    "Illegal instruction",    "Trace/BPT trap",    "IOT trap",    "EMT trap",    "Floating exception",    "Killed",    "Bus error",    "Segmentation fault",    "Bad system call",    "Broken pipe",    "Alarm clock",    "Terminated",#ifdef	SIGURG    "Urgent I/O condition",#else    NULL,#endif    "Stopped (signal)",    "Stopped",    "Continued",    "Child exited",    "Stopped (tty input)",    "Stopped (tty output)",    "Tty input interrupt",    "Cputime limit exceeded",    "Filesize limit exceeded",    NULL};#elseextern  char *sys_siglist[];#endif	BSD42/*  */int	pidstatus (status, fp, cp)register int   status;register FILE *fp;register char *cp;{    int     signum;    if ((status & 0xff00) == 0xff00)	return status;    switch (signum = status & 0x007f) {	case OK: 	    if (signum = ((status & 0xff00) >> 8)) {		if (cp)		    fprintf (fp, "%s: ", cp);		fprintf (fp, "Exit %d\n", signum);	    }	    break;	case SIGINT: 	    break;	default: 	    if (cp)		fprintf (fp, "%s: ", cp);#ifndef	BSD42	    if (signum >= sizeof sigs || sigs[signum] == NULL)		fprintf (fp, "Signal %d", signum);	    else		fprintf (fp, "%s", sigs[signum]);#else	BSD42	    if (signum >= NSIG)		fprintf (fp, "Signal %d", signum);	    else		fprintf (fp, "%s", sys_siglist[signum]);#endif	BSD42	    fprintf (fp, "%s\n", status & 0x80 ? " (core dumped)" : "");	    break;    }    return status;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -