2016-04-22 4 views
5

私はC/C++用のソケットプログラミングを学び、bind、listenなどの機能のマニュアルページを調べ始めました。同じコマンドの複数のマニュアルページの違いは何ですか?

私はマニュアルページ間を移動していましたが、同じシステムコール、例えば私のLinuxボックスで、最大来るものソケット()これらのマニュアルの中で

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

は、最初の1(ソケット(2))です。

3pの接尾辞が「POSIXプログラマーズマニュアル」、残りの2つが「Linuxプログラマーズマニュアル」となっています。関数のプロトタイプと用法は同じです(私が理解する限り)。

私の質問は、同じシステムコールの2つの異なるバージョンのLinux Programmer's Manualの目的は何ですか?paranthesisの意味(socket(2)、socket(3p)、socket(7) )?

答えて

10

マニュアルページはセクションで構成され、各セクションにはそれぞれ独自のトピックがあります。

  • システムコール(カーネルが提供する機能)プログラム内
  • ライブラリの呼び出し(関数コマンド

    1. 実行可能プログラムまたはシェル:manのためのmanページをチェックアウト、man manを実行してみてください、それが可能なすべてのセクションを示していますライブラリ)通常は/ devで見つかった
    2. 特殊ファイル()
    3. ファイル形式と規約例えば/ etc/passwdファイル
    4. ゲーム
    5. その他(マクロパッケージと慣例を含む)。人が(7)、groffの(7)
    6. システム管理が
    7. カーネルルーチン[非標準] socket例えば

    (通常はルートのための)コマンド、 "ソケット(2)" システムであります"socket(3)"はライブラリが提供するPOSIXインタフェースであり、 "socket(7)"はsocketのトピックに関する一般的なドキュメントです。あなたは3つすべてが異なった内容を持っているのを見ることができます。

  • 関連する問題