Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
C プログラミング言語では、セマフォを定義するために特別な sem_t 型が必要なのはなぜですか? それは整数ではありませんでしたか?sem_t はどのように定義されていますか? 関数 sem_post および sem_wait はどのように実装されていますか? EDIT:GNU Cライブラリのような実装例は素晴らしいでしょう.
セマフォは OS カーネル管理オブジェクトであるため、sem_t は OS 固有であり、シグナル/待機呼び出しも OS カーネルを呼び出す必要があるためです。
通常、セマフォは、待機中のスレッドのユニット カウントとキューによって実装されます。