2017-04-03 2 views
0

Linux-4.4カーネルでは、私自身のシステムコールとキューがあるとしましょう。 グローバル変数としてint配列の定義を含むlinux-4.4/kernel/my_queue.cファイルを書き、キューのインタフェースとしてpop関数をプッシュします。カーネルでカスタムsys呼び出しとキューを作成した場合、スレッドセーフなのでしょうか?

そして、それはスレッドセーフですか?

私の悪い英語のため申し訳ありません

.. :)

答えて

1

Linuxカーネルは、システムが自動的にを呼び出し、直列化しません。 1つのシステムコールをと同時にと呼び出すことは可能です(しかし、別のスレッドから)。

システムコール実装がグローバル変数にアクセスする場合は、このアクセスを同期させて、正常に動作するようにする必要があります。

関連する問題