Anuncio
En Activity Monitor hay una opción de menú críptico para Enviar señal al proceso. ¿Alguna vez te has preguntado qué era? Si lo selecciona, verá términos oscuros como SIGINT y VISTA, 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 LinuxMac OS X se utiliza como elemento secundario para una interfaz limpia y elegante. Como escritor de Linux, es mi deber hacer comparaciones entre las distribuciones de Linux, pero también contra la competencia. Lee mas En el corazón de macOS. El 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. Fueron una de las primeras formas en que las aplicaciones podían comunicarse entre sí y son parte de los viejos estándares de "Interfaz de sistema operativo portátil" (POSIX).
Si bien es bueno entender los conceptos básicos de cómo funciona su sistema, también puede usar estas señales para capturar información sobre aplicaciones que se comportan mal.
¿Qué es POSIX?
POSIX es el estándar básico para los sistemas operativos Unix y Unix-Like. Entre estos sistemas compatibles se encuentra macOS, que fue hecho para ser compatible con Unix. En su núcleo está Darwin, un núcleo de Unix con raíces que se remontan a NeXTSTEP. Eso en sí era 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 recuperan están en un formato que pueden anticipar y procesar. Esta es una simplificación general de unos 40 años de historia informática, pero se entiende la idea general.
Al comunicarse con los demonios más básicos que conforman 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 común Mac OS lenguaje, servicios. El infame descubrimiento Es un ejemplo. Este fue el reemplazo de OS X Yosemite 10.10 para mDNSResponderotro servicio culpado por los problemas de red en esa actualización.
![Línea de comando](/f/909e90ee2e17808eddc72dd7c72b28d8.jpg)
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 y crear lo que se llama un volcado del núcleo. Los volcados de núcleo contienen todos los datos actuales sobre un programa en ejecución. Estos son esenciales para solucionar problemas de aplicaciones que se bloquean constantemente. En Mac, estos volcan 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 estos, pero si está frustrado por un problema de la aplicación, puede ser útil enviarlo a un desarrollador para obtener asistencia.
Hay otro poquito de informática 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 fundamental, XNU. Mach no tiene tanta historia 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: obtienes un actualizar a una aplicación o descargar una nueva aplicación Cómo instalar y eliminar software de Mac: 5 métodos fáciles¿Se cambió a una Mac y se familiarizó con lo básico? ¿Se pregunta cómo instalar el software desde la línea de comandos? ¿Tienes viejas aplicaciones de Windows que simplemente debes ejecutar en tu computadora Apple? Lee mas , y se cuelga cada vez que lo abres. Abre Forzar la salidadesde el menú de Apple y ver que la aplicación se muestra como No responde. Peor aún, es un proceso en segundo plano que arrastra su sistema hacia abajo.
![Monitor de actividad](/f/017a754d044c02f7a2d52498e9874c63.jpg)
Abierto Monitor de actividad y haga clic en el proceso que no responde. Entonces ve al 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 prefieres la terminal 4 cosas geniales que puedes hacer con la terminal de MacEl 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 utilizando comandos de texto, en lugar de ... Lee mas , utilizará un comando con el que ya está familiarizado. los matar
El comando se utiliza para detener un proceso. Si agregas -s
puede agregar un número para enviar una señal al proceso que está ejecutando. Aquí hay una lista del número de comandos comunes en la lista matar
página man:
- 1 - HUP (cuelgue)
- 2 - INT (interrupción)
- 3 - SALIR (salir)
- 6 - ABRT (abortar)
- 9 - KILL (muerte no atrapable, no ignorable)
- 15 - TERM (señal de terminación de software)
También puede enviar otras señales, estas son solo 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 bloqueados limpiamente. Para ser justos, no va a utilizar estos códigos todos los días. Cuando trabaje con un desarrollador en un extraño bloqueo de la aplicación, o cuando ayude a su administrador de sistemas 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 /cores
haciendo de este un directorio fácil de buscar al obtener datos para una aplicación bloqueada o bloqueada. Puede verificar aquí y ver qué volcados hay en el directorio utilizando el ls -a
mando. Esto le mostrará todos los archivos en ese directorio, luego puede copiarlos en un directorio más accesible. mv nombre de archivo destino
.
En Terminal utilizar el comando cd / núcleos
para cambiar al directorio, luego ls -a
para enumerar los contenidos. Para mover un archivo a su carpeta Documentos simplemente use mv nombre de archivo / Usuarios / nombre de usuario / Documentos
(reemplazando nombre del archivo y nombre de usuario).
![tabla de hockey](/f/d0afd101f163cfbd2cc561249d6aefd9.jpg)
Si usted 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 consultar un proyecto que solo utiliza fundación de código abierto de macOS echa un vistazo a PureDarwin. Háganos saber cómo funcionó eso en los comentarios. También nos gustaría saber cuándo las señales POSIX resolvieron un problema obstinado con su Mac.
¿Has usado señales POSIX para solucionar problemas antes?
Créditos de imagen: Dean Drobot / Shutterstock
Michael no usó una Mac cuando estaban condenados, pero puede codificar en Applescript. Tiene títulos en Informática e Inglés; lleva un tiempo escribiendo sobre Mac, iOS y videojuegos; y ha sido un mono de TI durante el día durante más de una década, especializándose en secuencias de comandos y virtualización.