Solucione los problemas de las aplicaciones de Mac a la manera antigua con las señales POSIX

Solucione los problemas de las aplicaciones de Mac a la manera antigua con las señales POSIX / Mac

En Activity Monitor hay una opción de menú críptico para Enviar señal a proceso. ¿Alguna vez te has preguntado qué era? Si lo seleccionas, verás términos oscuros como SIGINT y SIGHUP, que no aclara exactamente las cosas. Entonces, ¿qué son exactamente estas señales?

Esas señales son el resultado de la fundación Unix Mac OS X Yosemite, desde la perspectiva de un usuario de Linux Mac OS X Yosemite, desde la perspectiva de un usuario de Linux Mac OS X se utiliza como el elemento secundario para una interfaz limpia y elegante. Como escritor de Linux, es mi deber hacer comparaciones entre distribuciones de Linux, pero también contra la competencia. Leer más en el corazón de macOS. La terminal tiene algunas de estas señales incorporadas: cuando golpeas Ctrl + C Para detener un comando en ejecución, está enviando el proceso. SIGINT para interrumpir y detener el comando actualmente en ejecución. Eran una de las primeras formas en que las aplicaciones podían comunicarse entre sí y son parte de viejos “Interfaz de sistema operativo portátil” (POSIX) estándares.

Si bien es bueno comprender los conceptos básicos de cómo funciona su sistema, también puede utilizar estas señales para capturar información sobre aplicaciones que se comportan mal..

¿Qué es POSIX??

POSIX es el estándar básico para sistemas operativos Unix y Unix. Entre estos sistemas compatibles se encuentra macOS, que fue creado para ser compatible con Unix. En su núcleo se encuentra Darwin, un núcleo de Unix con raíces que se remontan a NeXTSTEP. Eso mismo fue una bifurcación de BSD, una de las variantes originales de Unix..

POSIX garantiza que todos estos sistemas operativos manejan el código de la manera esperada, lo que permite a los desarrolladores saber que su código es verdaderamente portátil. Cuando envían una de estas señales en otra máquina a un proceso, los datos que reciben están en un formato que pueden anticipar y procesar. Esta es una simplificación general de aproximadamente 40 años de historia informática, pero se obtiene la idea general..

Cuando se comunican con los demonios más básicos que forman la base Unix de macOS, estas señales son las mejores. Los demonios son los procesos en segundo plano que ejecutan los elementos esenciales de su computadora, o en el lenguaje común de los servicios. El infame descubrimiento es un ejemplo Este fue el reemplazo de OS X Yosemite 10.10 para mDNSResponder, Otro servicio culpado por los problemas de red en esa actualización.

Crédito de la imagen: Dominik Rusiecki a través de Freeimages

Dependiendo de la forma en que una aplicación está diseñada para recibir señales, puede enviar una señal para salir de una aplicación para crear lo que se llama un volcado de memoria. Los volcados del núcleo contienen todos los datos actuales sobre un programa en ejecución. Estos son esenciales para la resolución de problemas de las aplicaciones que se bloquean constantemente. En la Mac, estos se vuelcan en el formato de archivo Mach-O, que puede leer en el entorno de desarrollo de macOS llamado Xcode. La mayoría de los usuarios probablemente no harán mucho con esto, pero si se siente frustrado por un problema de la aplicación, puede ser útil enviarlo a un desarrollador para obtener asistencia..

Hay otro poco de computación clásica que muestra sus raíces aquí. El formato de archivo Mach-O comparte su nombre con el microkernel Mach. Junto con BSD, esto es parte de las raíces de macOS, y los dos son parte del núcleo fundacional, XNU. Mach no es tan conocido como BSD, por lo que no recibe mucha prensa, pero es parte de lo que diferencia al sistema operativo de Apple de otras variantes de Unix..

Entonces, ¿cómo puedo usarlos?

Todos hemos estado allí antes: obtiene una actualización de una aplicación o descarga una nueva aplicación Cómo instalar y eliminar el software de Mac: 5 métodos sencillos Cómo instalar y eliminar el software de Mac: 5 métodos fáciles Cambiado a una Mac y cómo llegar a ¿Te enfrentas a lo básico? ¿Se pregunta cómo instalar el software desde la línea de comandos? ¿Tienes aplicaciones antiguas de Windows que simplemente debes ejecutar en tu computadora Apple? Lee más, y se cuelga cada vez que lo abres. Abre Forzar la salida en el menú Apple y vea que la aplicación se muestra como No responde. Peor aún, es un proceso en segundo plano arrastrando su sistema hacia abajo.

Abierto Monitor de actividad y haga clic en el proceso que no responde. Entonces ve a la Ver menú y seleccione Enviar señal para procesar. Aparecerá un menú emergente que le permitirá elegir qué señal enviar al proceso. Seleccione su señal y presione Enviar.

Si prefiere la Terminal 4 Cosas geniales que puede hacer con la Mac Terminal 4 Cosas geniales que puede hacer con la Terminal Mac La terminal es el análogo de Mac OS X del símbolo del sistema de Windows, o CMD. Es una herramienta, como probablemente ya sepa, que le permite controlar su computadora usando comandos de texto, como opuesto ... Leer más, utilizará un comando con el que ya está familiarizado. los matar El comando se utiliza para detener un proceso. Si añades -s puedes agregar un número para enviar una señal al proceso que estás matando. Aquí hay una lista del número de comandos comunes en la lista matar página del manual:

  • 1 - HUP (colgar)
  • 2 - INT (interrupción)
  • 3 - SALIR (salir)
  • 6 - ABRT (abortar)
  • 9 - KILL (kill no capturable, no ignorable)
  • 15 - TERM (señal de terminación de software)

También hay otras señales que puede enviar, estas son las más comunes. Hay una lista completa de códigos disponibles aquí.

¿Cuándo los uso??

Ahora que sabe qué hacer con las señales POSIX, puede usarlas para detener sus procesos colgados de forma limpia. Para ser justos, no vas a utilizar estos códigos todos los días. Cuando trabaje con un desarrollador en una aplicación extraña o cuando ayude a su sysadmin beta a probar las aplicaciones internas de su empresa, estos códigos pueden ayudarlo a obtener la información que necesitan..

Si la aplicación está codificada para crear estos volcados, los encontrará en el directorio. / núcleos haciendo de este un directorio fácil de consultar al obtener datos para una aplicación bloqueada o bloqueada. Puede consultar aquí y ver qué volcados se encuentran en el directorio usando el ls -a mando. Esto le mostrará todos los archivos en ese directorio, luego puede copiarlos en un directorio con música más accesible con el comando destino de nombre de archivo mv.

En Terminal utilizar el comando cd / cores para cambiar al directorio, entonces ls -a para listar los contenidos. Para mover un archivo a su carpeta de Documentos simplemente use mv filename / Usuarios / nombre de usuario / Documentos (reemplazando nombre del archivo y nombre de usuario).

Crédito de la imagen: Erika Varga vía Freeimages

Si es un usuario de Unix desde hace mucho tiempo que se mudó a la Mac, ¿qué otras características poco conocidas existen? Si está interesado en revisar un proyecto que solo usa la base de código abierto de macOS, visite PureDarwin. Háganos saber cómo funcionó en los comentarios. También nos gustaría saber cuándo las señales POSIX resolvieron un problema persistente con su Mac.

¿Ha utilizado señales POSIX para solucionar problemas antes??

Créditos de la imagen: Dean Drobot / Shutterstock

Más información sobre: ​​Símbolo del sistema, macOS Sierra, Terminal, Unix.