Linux用のロード可能なカーネルモジュールをプログラムする方法を学ぼうとしています。誰かが機能sleep_on
と機能を教えてくれwake_up
ないかと思っていました。
例では、私が見て&WaitQ
いるものは常にそれらに渡され、
static DECLARE_WAIT_QUEUE_HEAD(WaitQ);
モジュールの上部で宣言されています。
Linux用のロード可能なカーネルモジュールをプログラムする方法を学ぼうとしています。誰かが機能sleep_on
と機能を教えてくれwake_up
ないかと思っていました。
例では、私が見て&WaitQ
いるものは常にそれらに渡され、
static DECLARE_WAIT_QUEUE_HEAD(WaitQ);
モジュールの上部で宣言されています。
カーネル内のタスクがリソースを使用したいポイントに到達し、それが通知された場合the resource is currently used by another task
、それはスリープ状態になることを決定できますwake me up when the resource is available again
。これは基本的にsleep_onとwake_upの扱いです。詳細な説明については、こちらを参照してください:http ://www.linuxtopia.org/online_books/Linux_Kernel_Module_Programming_Guide/x1032.html