为什么 Ubuntu 不显示信号手册第 3 部分?

为什么 Ubuntu 不显示信号手册第 3 部分?

标题说明了一切。我正在运行 Ubuntu 20.04,我想阅读文档的第 3 部分signal

但是,当我在终端窗口中输入以下内容时:

$ man 3 signal

我得到:

No manual entry for signal in section 3

但是,我在网上的其他地方找到了它。我在这里遗漏了什么?

答案1

思考这是因为 -在 Linux 中-signal实现为系统调用而不是库函数,因此属于手册的第 2 部分而不是第 3 部分。

signal您可以通过安装该包来添加 POSIX 实现的第 3 节手册页manpages-posix-dev

$ dpkg -S $(man -w 3 signal)
manpages-posix-dev: /usr/share/man/man3/signal.3posix.gz

出于兼容性原因,glibc还提供了一个signal库函数,该函数在手册页第 3 节中记录为bsd_signal

BSD_SIGNAL(3)              Linux Programmer's Manual             BSD_SIGNAL(3)

NAME
       bsd_signal - signal handling with BSD semantics

SYNOPSIS
       #include <signal.h>

       typedef void (*sighandler_t)(int);

       sighandler_t bsd_signal(int signum, sighandler_t handler);

也可以看看:

相关内容