Est-il possible d'obtenir un pointeur pour traiter le descripteur d'un processus dans un module du noyau? S'il est possible de le faire, comment le faire? J'ai besoin de trouver tous les fichiers ouverts par un processus et leurs valeurs de décalage de chaque descripteur de fichier ....descripteur de processus dans les modules du noyau
Répondre
Je l'ai trouvé, je suis le pointeur pour traiter ... la fonction descripteur est déclarée dans linux/sched.h
struct task_struct find_task_by_pid(pid_t pid)
.. Je pense que je peux utiliser ce descripteur de processus à suivre au descripteur de fichier et leur compensations ... Merci u all ur soutien
Eh bien, je ne sais pas comment obtenir cela à partir d'un module noyau, mais il y a de nombreuses façons de obtenir à partir d'un morceau de code régulier ... Pas particulièrement efficace, c'est. Commençons par la façon dont lsof et d'autres utilitaires similaires le font, et continuez en regardant/proc/$ pid/fd
Parcourez le système de fichiers proc à la recherche de processus avec des descripteurs de fichiers ouverts. Cependant, vous ne pouvez pas détecter les décalages dans les handles de fichiers ouverts.
Je ne sais pas ce que vous essayez d'atteindre, généralement tout ce que exécute dans le contexte d'un identifiant de processus donné. C'est toujours à votre disposition via le "global" global. Si vous voulez trouver un descripteur de processus arbitraire alors find_task_by_pid est probablement ce que vous voulez . Toutes les informations de processus découlent de task_struct.
- 1. Utilisation des processus de l'espace utilisateur pour assister les modules du noyau
- 2. Descripteur de processus Windows
- 3. Modules de noyau non-GPL utilisant GPL
- 4. pile de noyau pour le processus linux
- 5. Empêcher l'héritage du descripteur de fichiers dans la librairie multitraitement
- 6. Définition de l'affinité de processus en mode noyau
- 7. Programmation du noyau d'apprentissage
- 8. Arguments du noyau
- 9. Découvrir pourquoi un processus passe du temps dans le noyau dans win32
- 10. fonction pour obtenir le descripteur de fichier terminal du processus en cours UNIX
- 11. problèmes lors de l'initialisation du noyau linux
- 12. Comment puis-je enregistrer le processus ou l'activité du noyau utilisant le disque dans GNU/Linux?
- 13. Utilisation du format de date locale dans les modules Joomla
- 14. Exécution de l'opération du journal dans les modules Http?
- 15. Win32API - Comment obtenir le nom de fichier du processus à partir du handle de processus?
- 16. Simulation du descripteur de fichier dans l'espace utilisateur
- 17. Compiler le module noyau Linux (2.6) incluant les en-têtes non-noyau
- 18. Obtenir le processus de création de noyau Linux pour reconstruire les fichiers modifiés
- 19. test du processus de connexion de l'utilisateur dans les rails
- 20. Assemblage Maven - Appel de l'assemblage de modules
- 21. Modules VMware server 1.0.7 incompatibles avec le noyau 2.6.26 - patché, où soumettre?
- 22. Problème de conversion de descripteur
- 23. Comment configurer le noyau Linux dans Buildroot?
- 24. Écriture des extensions du noyau pour AIX
- 25. Comment obtenir le descripteur de fichier du tampon en mémoire?
- 26. Comment obtenir l'identifiant de processus du processus appelant dans erlang?
- 27. Méthodes de communication entre le noyau et les applications utilisateur
- 28. Surveillance du processus dans GWT
- 29. WaitForSingleObject sur un descripteur de fichier?
- 30. Pourquoi ai-je besoin de re-compiler le module noyau vmware après une mise à niveau du noyau Linux?