Die Funktion mutex_lock_interruptible() im Linux-Kernel versucht grundsätzlich, einen Mutex zu sperren und wartet weiter, bis eine Aufgabe unterbrochen wird. Nun, wie unterbreche ich eigentlich eine Aufgabe?Linux Kernel mutex_lock_interruptible
3
A
Antwort
7
Suffix _interruptible
im Linux-Kernel bedeutet, dass das Warten durch die Funktion unterbrochen wird, wenn der Thread (Prozess) das Signal empfängt.
Es kann Signal gesendet werden durch kill()
Benutzer-Space-Funktion, oder Signale von bestimmten Funktionen generiert, wenn Bedingung erfüllt, z. durch den Timer (create_timer()
, wenn die Zeit abgelaufen ist, oder durch asinchronous IO, wenn anstehende Operation abgeschlossen ist.
Hinweis, dass unterbrechungs warten kann nicht einmal von SIGKILL unterbrochen werden, dh Prozess kann erst Warte Enden abgeschlossen sein.
Verwandte Themen
- 1. Embedded Linux Kernel und Desktop Linux Kernel-Unterschied
- 2. Linux redhat kernel-headers
- 3. Linux Kernel Scheduling
- 4. Linux-Kernel config.h
- 5. Linux Kernel-Konfigurationsoptionen anzeigen
- 6. Linux-Kernel-Modul Kompilierung
- 7. Linux-Kernel-Entwicklung
- 8. Debugging Linux Kernel Panic
- 9. Linux Kernel-Codierungsstil
- 10. Linux Kernel Betriebssystem Register
- 11. Linux-Kernel exportierte Symbole
- 12. Linux Kernel Preemption Levels
- 13. glib und linux kernel
- 14. Konfiguration Linux Kernel
- 15. Linux Kernel list.h
- 16. Linux-Kernel-Modul
- 17. Linux-Kernel-Entwicklung
- 18. Linux-Kernel-Funktion set_user_nice
- 19. Linux Kernel Fehler kompilieren xt_CONNMARK.h
- 20. Linux Kernel-Pufferspeicher ist Null
- 21. benutzerdefinierte Netzwerkprotokoll für Linux-Kernel
- 22. Linux Kernel hashtable Struktur hlist_head
- 23. Linux Systemaufrufe und Kernel-Modus
- 24. Compile Linux-Kernel-Modul (lincan)
- 25. Wie schlafen im Linux-Kernel?
- 26. RDMA-API für Linux-Kernel
- 27. Linux-Kernel list.h und MSVC
- 28. "Current" in Linux-Kernel-Code
- 29. Makefile für Linux Kernel Modul?
- 30. Kernel-Stack für Linux-Prozess
Ich habe einen Kernel-Thread warten auf einen Mutex und ich will es warten zu stoppen und einen Fehlercode zurückgeben, wie kann ich das tun? Ist send_sig() der Weg, es zu tun oder gibt es einen besseren Weg? –
Ja, Sie können 'send_sig()' für das Sendesignal im Kernel verwenden. – Tsyvarev