同一命令的多个手册页之间有什么区别?
What is the difference between multiple man pages of the same command?
我开始学习 C/C++ 的套接字编程,并检查手册页中的绑定、侦听等功能。
当我在手册页之间导航时,我注意到有些情况下同一个系统调用有多个手册页,例如套接字()
http://man7.org/linux/man-pages/man2/socket.2.html
http://man7.org/linux/man-pages/man3/socket.3p.html
http://man7.org/linux/man-pages/man7/socket.7.html
在这些手册中,出现在我的 linux 盒子里的是第一本(socket(2))。
我注意到后缀为 3p 的标题为 "POSIX programmer's manual",其余两个标题为 "Linux programmer's manual"。函数原型和用法是相同的(据我了解)。
我的问题是:Linux 程序员手册的两个不同版本对同一个系统调用的用途是什么,括号之间的数字是什么意思 (socket(2), socket(3p) ,套接字(7))?
手册页按部分组织,每个部分都有自己的主题。查看 man
的联机帮助页,尝试 运行 man man
,它列出了所有可用的部分:
- 可执行程序或shell命令
- 系统调用(内核提供的函数)
- 库调用(程序库中的函数)
- 特殊文件(通常在 /dev 中)
- 文件格式和约定例如/etc/passwd
- 游戏
- 杂项(包括宏包和约定),例如男人(7),格罗夫(7)
- 系统管理命令(通常只针对 root)
- 内核例程[非标准]
以socket
为例,"socket(2)"是操作系统内核提供的系统调用,"socket(3)"是库提供的POSIX接口,"socket(7)"是关于套接字主题的一般文档。可以看到三个都有不同的内容
我开始学习 C/C++ 的套接字编程,并检查手册页中的绑定、侦听等功能。
当我在手册页之间导航时,我注意到有些情况下同一个系统调用有多个手册页,例如套接字()
http://man7.org/linux/man-pages/man2/socket.2.html
http://man7.org/linux/man-pages/man3/socket.3p.html
http://man7.org/linux/man-pages/man7/socket.7.html
在这些手册中,出现在我的 linux 盒子里的是第一本(socket(2))。
我注意到后缀为 3p 的标题为 "POSIX programmer's manual",其余两个标题为 "Linux programmer's manual"。函数原型和用法是相同的(据我了解)。
我的问题是:Linux 程序员手册的两个不同版本对同一个系统调用的用途是什么,括号之间的数字是什么意思 (socket(2), socket(3p) ,套接字(7))?
手册页按部分组织,每个部分都有自己的主题。查看 man
的联机帮助页,尝试 运行 man man
,它列出了所有可用的部分:
- 可执行程序或shell命令
- 系统调用(内核提供的函数)
- 库调用(程序库中的函数)
- 特殊文件(通常在 /dev 中)
- 文件格式和约定例如/etc/passwd
- 游戏
- 杂项(包括宏包和约定),例如男人(7),格罗夫(7)
- 系统管理命令(通常只针对 root)
- 内核例程[非标准]
以socket
为例,"socket(2)"是操作系统内核提供的系统调用,"socket(3)"是库提供的POSIX接口,"socket(7)"是关于套接字主题的一般文档。可以看到三个都有不同的内容