Dépanner mac applications à l`ancienne avec des signaux posix

Dans le Moniteur d`activité il y a une option de menu cryptique Envoyer un signal au processus

. Avez-vous déjà demandé ce qu`il était? Si vous sélectionnez, vous verrez des termes obscurs comme SIGINT et SIGHUP, qui fait des choses pas très clair vers le haut. Alors, quels sont exactement ces signaux?

Ces signaux sont le résultat de la fondation Unix au cœur de Mac OS. Terminal a certains de ces signaux intégrés: lorsque vous appuyez sur Ctrl + C pour arrêter une commande en cours d`exécution, vous envoyez le processus SIGINT pour interrompre et arrêter la commande en cours d`exécution. Ils ont été l`une des premières façons des applications peuvent communiquer entre eux et font partie de vieux « portable du système d`exploitation Interface » (normes POSIX).Mac OS X Yosemite, dans la perspective d`un utilisateur LinuxMac OS X Yosemite, dans la perspective d`un utilisateur LinuxMac OS X est utilisé comme l`enfant d`affiche pour une interface propre et élégante. En tant qu`écrivain Linux, il est de mon devoir de faire des comparaisons entre les distributions Linux, mais aussi contre la concurrence.Lire la suite

Bien qu`il soit agréable de comprendre les bases de la façon dont fonctionne votre système, vous pouvez également utiliser ces signaux pour capturer des informations sur mauvaise conduite des applications.

Qu`est-ce que Posix?

Est la norme Posix de base pour systèmes Unix d`exploitation Unix et. Parmi ces systèmes conformes est macOS, qui a été conçu pour être compatible Unix. Au cœur de Darwin est un noyau Unix avec des racines qui remontent à NeXTSTEP. Ce lui-même était une fourchette de BSD, l`une des variantes Unix d`origine.

Posix assure tous ces systèmes d`exploitation interpréter le code de façon prévisible, ce qui permet aux développeurs de connaître leur code est vraiment portable. Quand ils envoient un de ces signaux sur une autre machine à un processus, les données qu`ils reviennent est dans un format qu`ils peuvent anticiper et processus. Ceci est une simplification grossière d`environ 40 ans d`histoire de l`informatique, mais vous avez l`idée générale.

Lors de la communication avec les daemons les plus élémentaires qui composent la base Unix de Mac OS, ces signaux sont les meilleurs. Daemons sont les processus d`arrière-plan qui exécutent l`essentiel de votre ordinateur - ou en commun le langage macOS, services. L`infâme discoveryd est un exemple. Cela a été le système d`exploitation de remplacement X Yosemite 10,10 pour mDNSResponder, un autre service blâmé pour les problèmes de réseau dans cette mise à jour.

Ligne de commande
Crédit d`image: Dominik Rusiecki via Freeimages

Selon la façon dont une application est conçue pour recevoir des signaux, vous pouvez envoyer un signal à quitter une application pour créer ce qu`on appelle une décharge de base. décharges contiennent toutes base des données actuelles sur un programme en cours d`exécution. Ces éléments sont essentiels pour les applications de dépannage qui s`écrasent constamment. Sur Mac, ces déversent dans le format de fichier Mach-O, que vous pouvez lire dans l`environnement de développement macOS appelé Xcode. La plupart des utilisateurs ne seront probablement pas faire grand chose avec eux, mais si vous êtes frustré par un problème d`application, ils peuvent être utiles pour envoyer à un développeur pour le soutien.

Video: Популярные видео – Сигналы и Си

Il y a un autre peu de l`informatique classique montrant ici ses racines. Le format de fichier Mach-O partage son nom avec le micronoyau Mach. Avec BSD, cela fait partie des racines de macOS, et les deux font partie du noyau fondamental, XNU. Mach est pas aussi étagé que BSD, il ne reçoit pas beaucoup de la presse, mais fait partie de ce qui a mis le système d`exploitation d`Apple en dehors des autres variantes d`Unix.

Comment puis-je utiliser?

Nous avons tous été là avant: vous obtenez un mettre à jour une application, ou télécharger une nouvelle application, et il se bloque à chaque fois que vous l`ouvrez. Vous ouvrez Forcer à quitter à partir du menu Apple et voir l`application montre comme Ne répond pas. Pire encore, il est un processus d`arrière-plan en faisant glisser votre système vers le bas.Comment installer & Mac supprimer le logiciel: 5 méthodes facilesComment installer & Mac supprimer le logiciel: 5 méthodes facilesSwitched à un Mac et se familiariser avec les bases? Vous vous demandez comment installer le logiciel à partir de la ligne de commande? Vous avez de vieilles applications Windows que vous devez simplement exécuter sur votre ordinateur Apple?Lire la suite

Moniteur d`activité

Ouvrir Moniteur d`activité et cliquez sur le processus qui ne répond pas. Ensuite, allez à la Vue menu et sélectionnez Envoyer un signal à traiter. Un menu apparaîtra et vous permettra de choisir le signal à envoyer au processus sélectionner votre signal et appuyez sur Envoyer.

Si vous préférez le terminal, vous utiliserez une commande que vous êtes déjà familier. le tuer commande est utilisée pour arrêter un processus. Si vous ajoutez -s vous pouvez ajouter un numéro pour envoyer un signal au processus que vous tuez. Voici une liste du nombre de commandes communes dans la liste tuer page man:4 choses cool que vous pouvez faire avec le Terminal de Mac4 choses cool que vous pouvez faire avec le Terminal de MacLe terminal est l`analogue Mac OS X de l`invite de commande Windows ou CMD. Il est un outil, comme vous le savez probablement déjà, qui vous permet de contrôler votre ordinateur à l`aide des commandes de texte, par opposition ...Lire la suite

  • 1 - HUP (raccrocher)
  • 2 - INT (interruption)
  • 3 - QUIT (quitter)
  • 6 - ABRT (abort)
  • 9 - KILL (kill non saisissable, non ignorable)
  • 15 - DUREE (signal de terminaison logiciel)

Video: Procédure importante pour Atlas HD100 et Atlas HD200s pour éviter les blocages de la télécommande

Il y a quelques autres signaux que vous pouvez envoyer aussi bien, ce ne sont que les plus courantes. Il y a une liste complète des codes disponibles ici.

Quand dois-je utiliser?

Maintenant que vous savez ce qu`il faut faire avec les signaux POSIX, vous pouvez les utiliser pour arrêter proprement vos processus bloqués. Pour être juste, vous ne comptez pas utiliser tous les jours ces codes. Lorsque vous travaillez avec un développeur sur un accident d`application bizarre, ou aider votre bêta sysadmin test interne des applications de votre entreprise, ces codes peuvent aider à obtenir les informations dont ils ont besoin.

Si l`application est codé pour créer ces décharges que vous allez les trouver dans le répertoire / coeurs ce qui en fait un répertoire facile à regarder lorsque l`obtention de données pour un plantage ou d`une application suspendue. Vous pouvez vérifier ici et voir ce que les décharges sont dans le répertoire en utilisant la ls -a commander. Cela vous montrera tous les fichiers dans ce répertoire, vous pouvez ensuite les copier dans un répertoire de musique plus accessible la commande destination nom mv.

Dans Terminal Utilisez le commande cd / noyaux pour passer au répertoire, ls -a pour afficher le contenu. Pour déplacer un fichier dans votre dossier Documents utilisez simplement mv nom de fichier / Users / nom d`utilisateur / Documents (remplaçant nom de fichier et Nom d`utilisateur).

mackeyboard
Crédit d`image: Erika Varga via Freeimages

Si vous êtes un utilisateur Unix de longue date qui se déplaçait vers le Mac, ce que d`autres caractéristiques peu connues sont là-bas? Si vous êtes intéressé à vérifier un projet qui utilise uniquement la fondation open source de macOS consulter PureDarwin. Faites-nous savoir comment cela a fonctionné dans les commentaires. Nous aimerions également entendre lorsque les signaux POSIX résolu un problème tenace avec votre Mac.

Avez-vous utilisé des signaux pour le dépannage avant POSIX?

Articles connexes