POSIX 程序员手册 vs Linux 程序员手册

POSIX 程序员手册 vs Linux 程序员手册

我想看一下 的联机帮助页pthread_mutex_trylock

通过打字man pthread_mutex_trylock,我得到了No manual entry for pthread_mutex_trylock

然后我看到一个帖子建议这样做sudo apt-get install manpages-posix manpages-posix-dev

之后我看到这样的描述:

PTHREAD_MUTEX_LOCK(3POSIX)                               POSIX Programmer's Manual                              PTHREAD_MUTEX_LOCK(3POSIX)

PROLOG
       This manual page is part of the POSIX Programmer's Manual.  The Linux implementation of this interface may differ (consult the cor‐
       responding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.
  1. 这有什么区别POSIX 程序员手册Linux 程序员手册我通常看到的?

  2. 这句话是什么意思:

该接口的 Linux 实现可能有所不同(有关 Linux 行为的详细信息,请参阅相应的 Linux 手册页),或者该接口可能无法在 Linux 上实现。

那么我在哪里可以找到联机帮助页为了Linux 的实现 pthread_mutex_trylock?我可以pthread_mutex_trylock在我的系统上使用吗?我正在使用Ubuntu。

答案1

它这么说是因为不能保证 POSIX 手册(对于任何事物)对应于特定系统上相应事物的实际实现。

要获取 的手册pthread_mutex_trylock(),请安装实现该接口的库的手册。

在 Ubuntu 系统上,所需的手册似乎是软件包的一部分glibc-doc(通过在Ubuntu 软件包搜索页面)。

POSIX 手册是当然不无用。本地Linux界面应该与 POSIX 手册中描述的接口兼容,但特定于实现的手册也可能提到警告和特定于 Linux 的实现细节和扩展,以及类似的非 POSIX 功能。

如果您担心以下问题,POSIX 手册就变得尤为重要可移植性将你的代码移植到其他 Unix 系统,在这种情况下你会想要避免依赖于 Linux 特定的 POSIX 规范扩展。

答案2

从 Arch Linux 开始,该软件包man-pages来自core.例如fcntl,安装后man-pagesman 2 fcntl给出Linux程序员手册页面,同时man 3 fcntl给出man fcntlPOSIX程序员手册。

相关内容