Ich habe ursprünglich versucht, getpid()
in meinem Kernel-Modul für OS X/MacOS zu verwenden, gibt es eine Möglichkeit, die PID (Prozess-ID) des Prozesses, in dem Kontext meine Kext im Kernel ausgeführt wird? Gibt es eine vorhandene Funktion oder Variable, die ich verwenden kann?Wie erhalten Sie die aktuelle Prozess-ID im Mac-Kernel-Erweiterungscode?
1
A
Antwort
1
Um die PID des Prozesses zu erhalten, mit dem der aktuell laufende Kernel-Thread verknüpft ist, rufen Sie die proc_selfpid()
function; Sie müssen #include <sys/proc.h>
in Ihrem Kext-Code, um den Prototyp zu erhalten. Die PID wird natürlich nur einem Benutzerprozess entsprechen, wenn der Code im Kontext einer Art Callback für einen Syscall ausgeführt wird.
Verwandte Themen
- 1. Dynamisch erhalten Sie die aktuelle Zeilennummer
- 2. Erhalten Sie aktuelle Zeit
- 3. Wie die aktuelle Tagesnummer im laufenden Monat und Jahr erhalten
- 4. So erhalten Sie die aktuelle Route Guard
- 5. Wie kann ich die aktuelle Bildschirmausrichtung erhalten?
- 6. Erhalten Sie aktuelle Systemzeit einer Maschine im Netzwerk
- 7. So erhalten Sie das aktuelle Datum im PST-Format?
- 8. Wie erhalten Sie die aktuelle Zahl in Pythons Matplotlib?
- 9. Wie programmatisch erhalten Sie die aktuelle Datenbank Mongoid schreibt?
- 10. Erhalten Sie aktuelle Cordova-Version
- 11. Wie sysprocesses.program_name für die aktuelle Verbindung erhalten
- 12. Wie erhalten Core aktuelle Benutzerinformationen?
- 13. So erhalten Sie das aktuelle Datum im Codezeichner
- 14. So erhalten Sie die neueste Perforce-Änderungsliste im Depot für die aktuelle Client-Spezifikation
- 15. So erhalten Sie die aktuelle Änderungsliste einer Datei in Perforce
- 16. Android - So erhalten Sie aktuelle Hintergrundbild Name
- 17. Erhalten Sie aktuelle System Kultur Info
- 18. Wie kann ich die aktuelle Taxonomie-ID erhalten?
- 19. So erhalten Sie die aktuelle Wiedergabezeit von GVRVideoView
- 20. So erhalten Sie die aktuelle URL von ASP.NET-Code hinter
- 21. Unmanaged C++ Erhalten Sie die aktuelle Prozess-ID? (Konsolenanwendung)
- 22. So erhalten Sie die aktuelle Transaktion vom dbcontext
- 23. So erhalten Sie die aktuelle Benutzeradresse von Firebase
- 24. So erhalten Sie die aktuelle Modellinstanz von inlineadmin in Django
- 25. Erhalten Sie die aktuelle Zeit mit GMT + 2 in GoLang
- 26. So erhalten Sie die aktuelle Zelle in radScheduler
- 27. So erhalten Sie die aktuelle Webseite mit Selen
- 28. So erhalten Sie aktuelle Dropzone in interact.js
- 29. Aktuelle ModelView-Matrix erhalten
- 30. So erhalten Sie die aktuelle Elementprüfung im Glitter-Raster-Ereignis onSelectedRowsChanged
Siehe https://stackoverflow.com/questions/41676/is-there-a-way-of-getting-the-process-id-of-my-c-application. Es ist verfügbar in unistd.h. – mattias
@AndrewHenle Warum würdest du denken, werde ich dies posten und so viel in die Bibliotheken graben, wenn ich es noch nicht googeln konnte #facepalm – Anurag
Weil [Google nach "getpid() auf Mac" sucht] (https://www.google. com/search? q = getpid() + on + mac) liefert als erstes Ergebnis [die Mac 'getpid (2)' man-Seite] (http://www.manpages.info/macosx/getpid.2.html)) die eindeutig besagt, dass Sie '#include' und '#include ' brauchen, von denen keiner in Ihrer Frage erwähnt wird. #facepalm tatsächlich. –