Ist es möglich, einen Zeiger auf Prozessdeskriptor eines Prozesses in einem Kernelmodul zu bekommen? Wenn es möglich ist, pls post, wie? Ich muss alle Dateien finden, die von einem Prozess und ihren Offset-Werten von jedem Dateideskriptor geöffnet werden.Prozessdeskriptor in Kernelmodulen
Antwort
ich es gefunden habe ich den Zeiger Descriptor zu verarbeiten ... die Funktion in Linux/sched.h deklariert wird
struct task_struct find_task_by_pid(pid_t pid)
.. Ich denke, ich diesen Prozessdeskriptor zum Dateideskriptors folgen können und ihre Offsets ... Vielen Dank für Ihre Unterstützung
Nun, ich weiß nicht, wie man das von einem Kernel-Modul bekommt, aber es gibt viele Möglichkeiten Holen Sie es aus einem normalen Stück Code ... Nicht besonders effizient, das ist. Beginnend an der Art, wie lsof und andere ähnliche Dienstprogramme es tun, und weiter mit einem Blick auf/proc/$ pid/fd
Scannen Sie das Proc-Dateisystem nach Prozessen mit offenen Dateideskriptoren suchen. Sie können jedoch keine Offsets in offenen Dateigriffen erkennen.
Ich bin mir nicht sicher, was Sie versuchen zu erreichen, in der Regel wird nur alles im Kontext einer bestimmten Prozess-ID ausgeführt. Das ist immer für Sie verfügbar über die "aktuelle" global. Wenn Sie einen beliebigen Prozessdeskriptor finden möchten, dann ist find_task_by_pid wahrscheinlich, was Sie wollen. Alle Prozessinformationen fließen von task_struct.
- 1. Programmatisches Einfügen und Entfernen von Kernelmodulen in C
- 2. Elf Datei ändern
- 3. Linux aus Baum Modul Build Problem
- 4. "__aeabi_ldivmod" undefined beim Kompilieren des Kernelmoduls
- 5. In CSV in Array in Python konvertieren
- 6. 'IN' & 'NICHT IN' in Linq Abfrage
- 7. % in% Veränderung in dplyr Paket in R
- 8. Schleifen in Schleifen in Schleifen in Java
- 9. Funktionsparameter in Zeichenfolge in Parameter in Objekt
- 10. In Operator in Linq
- 11. In Python in bash
- 12. in Verknüpfungstabelle in Hibernate
- 13. IN-Klausel in sqlite
- 14. \ in path.combine in C#
- 15. "IN" Operator in Linq
- 16. in
- 17. in
- 18. Synchronisation in Vektoren in Java
- 19. SQLite in Operator in query()
- 20. Blobs in Blobstore in GAE
- 21. mehr IN-Bedingungen in JPQL
- 22. RadUpload in FormView in RadAjaxPanel
- 23. Javascript in select in Selen
- 24. SQL - IN vs. NICHT IN
- 25. Bindung in ItemTemplate in ResourceDictionary
- 26. Split in Großbuchstaben in PHP?
- 27. Kreuzung in sqlite3 in Python
- 28. Assoziativität von "in" in Python?
- 29. Vorwahlwert in Combobox in extjs
- 30. memcpy in float in int