【发布时间】:2020-12-13 12:13:41
【问题描述】:
我在我的 Linux 系统中使用过 socket() 的手册页,我想知道它记录的函数属于什么。
例如,函数int socket(int domain, int type, int protocol)。函数是 glibc 的一部分吗?它是否以某种方式直接成为 Linux 内核的一部分?手册的标题 Linux 程序员手册。
我很想得到解释和澄清。
【问题讨论】:
-
这是一个 Unix 系统调用。
libc提供了允许从 C/C++ 调用它的 API。 -
您通常可以从手册部分看出。
man socket将向您显示socket(2)即它在手册的第 2 节中。有关部分列表,请参阅man man。第 1 节记录独立命令,2 节是系统调用,3 个用户空间库(如果没有提到,则为 libc),第 5 节描述磁盘上的配置文件。 -
您的意思是说,手册在任何其他类 Unix 操作系统中显示通用的伯克利套接字 API(它是
libc)并且实现取决于机器?例如,如果我在使用 Debian 时将使用该函数,它将使用 glibc(its libc) 作为函数实现和 Linux 系统调用?
标签: linux linux-kernel documentation glibc manpage