Solución de problemas de mac apps a la manera antigua con las señales posix

En el Monitor de actividad hay una opción de menú a críptico Enviar la señal para procesar. Alguna vez se preguntó lo que era? Si lo selecciona, verá términos oscuros como SIGINT y SIGHUP, Lo cual no exactamente a aclarar las cosas. Entonces, ¿qué son exactamente estas señales?

Esas señales son el resultado de la base UNIX en el corazón de MacOS. Terminal tiene alguna de estas señales incorporadas: cuando se pulse Ctrl + C para detener un comando de ejecución, que está enviando el proceso de SIGINT para interrumpir y detener el comando actualmente en ejecución. Fueron una de las primeras formas aplicaciones podían comunicarse entre sí y forman parte de las antiguas normas “portátil” Interfaz de Sistemas Operativos (POSIX).Mac OS X Yosemite, desde la perspectiva de un usuario de LinuxMac OS X Yosemite, desde la perspectiva de un usuario de LinuxMac OS X se utiliza como el emblema de una interfaz limpia y elegante. Como escritor de Linux, que es mi deber hacer comparaciones entre distribuciones de Linux, sino también frente a la competencia.Lee mas

Si bien es bueno para entender los conceptos básicos de cómo funciona el sistema, también se puede usar estas señales para capturar información sobre misbehaving aplicaciones.

¿Qué es POSIX?

POSIX es el estándar de base de los sistemas operativos Unix y Unix. Entre estos sistemas compatibles es MacOS, que fue hecho para ser compatible con Unix. En su núcleo está Darwin, un núcleo Unix con raíces que se remontan a NeXTSTEP. Eso sí era un tenedor de BSD, uno de los originales de Unix variantes.

POSIX garantiza todos estos sistemas operativos manejan código en modo esperado, lo que permite a los desarrolladores para conocer su código es realmente portátil. Cuando envían una de estas señales en otra máquina a un proceso, los datos de que vuelvan está en un formato que puedan anticipar y proceso. Esta es una simplificación grosera de alrededor de 40 años de historia de la informática, pero se entiende la idea general.

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

Línea de comando
Crédito de la imagen: Dominik Rusiecki través Freeimages

Dependiendo de la forma en que una aplicación está diseñada para recibir señales, puede enviar una señal al salir de una aplicación para crear lo que se llama un volcado de memoria. Los vaciados de memoria contienen todos los datos actuales acerca de un programa en ejecución. Estos son esenciales para las aplicaciones de solución de problemas que chocan constantemente. En el Mac, éstos descargan en el formato de archivo de Mach-O, que se puede leer en el entorno de desarrollo Xcode macOS llamada. La mayoría de los usuarios probablemente no hacer mucho con ellos, pero si se sienten frustrados por un problema de aplicación que pueden ser útiles para enviar a un desarrollador de apoyo.

Hay otro poco de la computación clásica mostrando sus raíces aquí. El formato de archivo de 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 está tan estratificado como BSD, por lo que no recibe una gran cantidad de la prensa, pero es parte de lo establecido sistema operativo de Apple, aparte de otras variantes de Unix.

Entonces, ¿cómo puedo utilizarlos?

Todos hemos estado allí antes: se obtiene una actualización de una aplicación, o descargar una nueva aplicación, y se cuelga cada vez que lo abra. Abre Forzar la salida en el menú Apple y ver la aplicación está apareciendo como No responde. Peor aún, es un proceso de fondo arrastrando su sistema hacia abajo.Cómo instalar & Quitar software Mac: 5 sencillos métodosCómo instalar & Quitar software Mac: 5 sencillos métodosAl cambiar a un Mac y llegar a enfrentarse con los conceptos básicos? Se pregunta cómo instalar el software desde la línea de comandos? Envejeció aplicaciones de Windows que simplemente hay que ejecutar en el equipo de Apple?Lee mas

monitor de actividad

Abierto monitor de actividad y haga clic en el proceso que no está respondiendo. A continuación, vaya a la Ver menú y seleccione Enviar la señal a procesar. Un menú pop-up y le permitirá elegir la señal a enviar a un proceso de seleccionar la señal y pulse Enviar.

Si prefiere el Terminal, va a utilizar un comando que ya está familiarizado con. los matar comando se utiliza para detener un proceso. Si se agrega -s se puede añadir un número para enviar una señal al proceso que se está matando. Aquí está una lista del número de comandos comunes lista en el matar página del manual:4 cosas interesantes que puede hacer con el terminal de Mac4 cosas interesantes que puede hacer con el terminal de MacEl terminal es el análogo de Mac OS X de la línea de comandos de Windows, o CMD. Es una herramienta, como probablemente ya saben, que le permite controlar el ordenador mediante comandos de texto, en lugar ...Lee mas

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

Hay algunas otras señales que puede enviar así, estos son sólo los más comunes. Hay una lista completa de los códigos disponibles aquí.

¿Cuándo debo usarlos?

Ahora que ya sabe qué hacer con las señales POSIX, puede utilizarlos para detener sus procesos paralizados limpiamente. Para ser justos, no se va a utilizar estos códigos de todos los días. Cuando se trabaja con un desarrollador de una aplicación accidente extraño, o ayudar a su administrador de sistemas beta probar aplicaciones internas de la empresa, estos códigos pueden ayudar a obtener la información que necesitan.

Si la aplicación se codifica para crear estos vertederos se van a encontrar en el directorio / núcleos haciendo de este un directorio de fácil mirar a al conseguir datos para un estrellarse o colgado aplicación. Aquí puede comprobar y ver lo que los vertederos están en el directorio utilizando el ls -a mando. Esto le mostrará todos los archivos de ese directorio que luego los puede copiar a un directorio de música más accesible el comando nombre del archivo de destino mv.

En Terminal utilizar el comando cd / núcleos para cambiar al directorio, a continuación, ls -a para listar el contenido. Para mover un archivo a la carpeta Documentos simplemente utilizar mv nombre de archivo / Users / nombre de usuario / Documentos (reemplazando nombre del archivo y nombre de usuario).

mackeyboard
Crédito de la imagen: Erika Varga a través Freeimages

Si usted es un largo tiempo de Unix de usuario que se trasladó a la Mac, ¿qué otras características poco conocido están ahí fuera? Si estás interesado en probar un proyecto que sólo utiliza la base de código abierto de macOS echa un vistazo a PureDarwin. Háganos saber cómo eso funcionó en los comentarios. También nos gustaría saber cuando las señales POSIX resuelven un problema persistente con su Mac.

Ha utilizado señales POSIX para la solución de problemas antes?

Artículos Relacionados