代码之家  ›  专栏  ›  技术社区  ›  Ande Turner

系统调用:UNIX、Linux、BSD和Solaris变体

  •  2
  • Ande Turner  · 技术社区  · 17 年前

    哪些系统调用将得到普遍支持?

    2 回复  |  直到 6 年前
        1
  •  12
  •   HoldOffHunger Lux    5 年前

    任何不是posix标准的东西都可能是额外的系统调用,也可能是系统调用层之上的额外库功能。如果您的目标是编写可移植代码,请坚持使用posix,并尽可能多地使用c库(与直接系统调用相反)。

    如果你只是好奇的话,它们差别很大。为了兼容posix,您不需要在系统调用方面提供太多支持。它指定了您需要支持的接口,但您是通过调用内核还是跳入共享库来实现这一点完全取决于您自己。

    因此,如果您的目标是实现一个标准库,该库不与任何其他库相链接,并且可以在多个unix上工作,那么在某些情况下,您可能会发现事情有点棘手。如果您的目标是编写与各种unix上的标准库相链接的内容,那么您可以获得一个通用的统一接口。

        2
  •  6
  •   alanc    14 年前

    Unix-Linux-BSD Cheat-Sheets Solaris syscalls .



    第二版包括大约300本。(总共大约有1100个标准函数调用,但其中许多是标准C库的一部分,或者显然不是内核工具。)