Réponses:
Les fichiers pid sont écrits par certains programmes pour enregistrer leur ID de processus pendant leur démarrage. Cela a plusieurs buts:
kill
commande en clair si on veut y mettre fin.La simple présence d'un fichier pid ne garantit évidemment pas que cet identifiant de processus particulier est en cours d'exécution, aussi cette méthode n'est-elle pas à 100% infaillible, mais "assez bonne" dans de nombreux cas. Vérifier si un PID particulier existe dans la table de processus n'est pas totalement portable sur les systèmes d'exploitation de type UNIX, sauf si vous souhaitez dépendre de l' ps
utilitaire, qu'il n'est peut-être pas souhaitable d'appeler dans tous les cas (et je crois que certains systèmes d'exploitation de type UNIX mettre en œuvre ps
différemment de toute façon).
Les programmes utilisent les fichiers de verrouillage pour s’assurer que deux instances distinctes d’un programme, pouvant s’exécuter simultanément sur un système, ne doivent pas accéder à autre chose en même temps. L'idée est avant que le programme n'accède à sa ressource, il vérifie la présence d'un fichier de verrouillage et, si le fichier de verrouillage existe, une erreur est générée ou attendez qu'il disparaisse. Lorsqu'il n'existe pas, le programme qui souhaite "acquérir" la ressource crée le fichier, puis les autres instances susceptibles de se produire plus tard attendent que ce processus soit terminé. Bien entendu, cela suppose que le programme "acquérant" le verrou libère effectivement et n'oublie pas de supprimer le fichier verrou.
Cela fonctionne parce que le système de fichiers sous tous les systèmes d'exploitation de type UNIX applique la sérialisation , ce qui signifie qu'un seul changement du système de fichiers a lieu à un moment donné. Un peu comme des verrous avec des bases de données et autres.
Ces fichiers sont souvent utilisés par les démons qui ne doivent être exécutés qu'une seule fois sur un système. Le fichier PID contient généralement le numéro d'ID de processus du programme déjà lancé et en cours d'exécution, le cas échéant. De plus, au démarrage, le fichier de verrouillage est créé. Tant que le fichier de verrouillage existe, il n'en démarrera pas un autre sans l'intervention de l'utilisateur. Si le fichier de verrouillage existe et que l'ID de processus mentionné dans le fichier pid n'est pas en cours d'exécution, le démon est considéré comme étant dans un état "mort", ce qui signifie qu'il est censé être en cours d'exécution mais qu'il n'est probablement pas dû à un blocage ou à un arrêt incorrect. . Cela pourrait initier un scénario spécial de démarrage / redémarrage pour certains programmes. Le fermer correctement supprimera le fichier de verrouillage.
Un fichier PID contiendra l'ID de processus d'un processus en cours d'exécution. Cela a divers usages. vous pouvez le lire et vérifier que le processus est toujours en cours d'exécution et prendre les mesures appropriées ou le lire et le tuer.
Un fichier de verrouillage est très probablement spécifique à une application. Les fichiers de verrouillage sont utilisés pour indiquer qu'une ressource est en cours d'utilisation et que le processus de demande d'accès doit attendre que la ressource soit libérée avant de continuer.
.lck
fichier du répertoire de la machine virtuelle, sinon le système vous indiquera qu'il est en cours d'utilisation lorsque vous essayez de le démarrer.