Connect with us

cómo

Cómo acabar con los procesos zombies en Linux

Published

on

Cómo matar procesos zombies en Linux

Los programas que están mal escritos o que funcionan mal pueden dejar procesos zombis al acecho dentro de su computadora Linux. Descubra cómo se crean los zombis y cómo finalmente puede dejarlos descansar.

Cómo funcionan los estados de proceso en Linux

Linux, por supuesto, tiene que realizar un seguimiento de todas las aplicaciones y demonios que se ejecutan en su computadora. Una de las formas en que lo hace es manteniendo la tabla de procesos. Esta es una lista de estructuras en la memoria del kernel. Cada proceso tiene una entrada en esta lista que contiene información al respecto.

No hay mucho en cada una de las estructuras de la tabla de procesos. Contienen la identificación del proceso, algunos otros elementos de datos y un puntero al bloque de control de proceso (PCB) para ese proceso.

Es el PCB que contiene los muchos detalles que Linux necesita buscar o configurar para cada proceso. La PCB también se actualiza a medida que se crea un proceso, se le da tiempo de procesamiento y finalmente se destruye.

La PCB de Linux contiene más de 95 campos. Se define como una estructura llamada task_struct.h , y tiene más de 700 líneas de largo. La PCB contiene los siguientes tipos de información:

  • Estado del proceso: los estados se describen a continuación.
  • Número de proceso: su identificador único dentro del sistema operativo.
  • Contador de programa: la próxima vez que se le dé acceso a la CPU a este proceso, el sistema utilizará esta dirección para encontrar la siguiente instrucción del proceso que debe ejecutarse.
  • Registros: la lista de registros de CPU utilizados por este proceso. La lista puede contener acumuladores, registros de índice y apuntadores de pila.
  • Abrir lista de archivos: archivos asociados con este proceso.
  • Información de programación de la CPU: se utiliza para determinar la frecuencia y la duración del tiempo de procesamiento de la CPU para este proceso. La prioridad del proceso, los indicadores de las colas de programación y otros parámetros de programación deben registrarse en la PCB.
  • Información de administración de memoria: detalles sobre la memoria que utiliza este proceso, como las direcciones de inicio y finalización de la memoria del proceso y los indicadores de las páginas de la memoria.
  • Información de estado de E / S: cualquier dispositivo de entrada o salida utilizado por el proceso.

El “Estado del proceso” puede ser cualquiera de los siguientes:

  • R: Un proceso en ejecución o ejecutable. Ejecutando significa que está recibiendo ciclos de CPU y ejecutándose. Un proceso ejecutable está listo para ejecutarse y esperando una ranura de CPU.
  • S: Un proceso de dormir. El proceso está esperando que se complete una acción, como una operación de entrada o salida, o que un recurso esté disponible.
  • D: El proceso se encuentra en un estado de suspensión ininterrumpida. Está usando una llamada al sistema de bloqueo y no puede continuar hasta que se hayan completado las llamadas al sistema. A diferencia del estado de “suspensión”, un proceso en este estado no responderá a las señales hasta que se complete la llamada al sistema y la ejecución haya regresado al proceso.
  • T: El proceso ha terminado (detenido) porque recibió la señal SIGSTOP. Solo responderá a las señales SIGKILL o SIGCONT, que terminan el proceso o le indican que continúe, respectivamente. Esto es lo que sucede cuando cambia de las tareas de primer plano (fg) a segundo plano (bg).
  • Z: un proceso Zombie. Cuando se completa un proceso, no desaparece simplemente. Libera cualquier memoria que esté usando y se elimina a sí mismo de la memoria, pero su entrada en la tabla de procesos y en la PCB permanecen. Su estado se establece en EXIT_ZOMBIE y se notifica a su proceso padre (mediante la señal SIGCHLD) que el proceso hijo ha finalizado.

En el estado Zombie, el proceso padre llama a una de las familias de funciones wait() cuando se crea el proceso hijo. Luego espera un cambio de estado en el proceso hijo. ¿Se ha detenido, continuado o interrumpido el proceso del niño por una señal? ¿Ha terminado ejecutando la finalización natural de su código?

Si el cambio de estado es uno que significa que el proceso hijo ha dejado de ejecutarse, se lee su código de salida. Luego, la PCB del niño se destruye y se elimina su entrada en la tabla de proceso. Idealmente, todo esto sucede en un abrir y cerrar de ojos, y los procesos en el estado zombie no existen por mucho tiempo.

¿Qué causa los procesos zombies en Linux?

Un proceso padre mal escrito podría no llamar a la función wait() cuando se crea el proceso hijo. Esto significa que nada está pendiente de los cambios de estado en el proceso hijo y se ignorará la señal SIGCHLD . O quizás otra aplicación esté afectando la ejecución del proceso principal, ya sea debido a una programación deficiente o una intención maliciosa.

Sin embargo, si el proceso principal no está atento a los cambios de estado en el proceso secundario, no se producirá el mantenimiento adecuado del sistema. La PCB y la entrada en la tabla de procesos no se eliminarán cuando finalice el proceso hijo. Esto da como resultado que el estado zombi nunca se elimine de la PCB.

Los zombis usan un poco de memoria, pero generalmente no representan un problema. La entrada en la tabla de procesos es pequeña, pero, hasta que se publique, el ID de proceso no se puede reutilizar. En un sistema operativo de 64 bits, es poco probable que esto cause problemas porque la PCB es mucho más grande que la entrada de la tabla de procesos.

Una gran cantidad de zombis podría, posiblemente, afectar la cantidad de memoria que queda libre para otros procesos. Sin embargo, si tienes tantos zombis, tienes un problema grave con la aplicación principal o un error del sistema operativo.

Cómo eliminar procesos Zombie

No puedes matar un proceso zombie porque ya está muerto. No responderá a ninguna señal porque se ha eliminado de la memoria; no hay ningún lugar para enviar una señal SIGKILL . Puede intentar enviar la señal SIGCHLD al proceso principal, pero si no funcionó cuando el proceso secundario terminó, es poco probable que funcione ahora.

La única solución confiable es eliminar el proceso principal. Cuando se termina, sus procesos secundarios son heredados por el proceso init , que es el primer proceso que se ejecuta en un sistema Linux (su ID de proceso es 1).

El proceso init realiza regularmente la limpieza necesaria de zombis, por lo que para matarlos, solo tienes que matar el proceso que los creó. El comando top es una forma conveniente de ver si tienes zombis.

Escriba lo siguiente:

Este sistema tiene ocho procesos zombies. Podemos egrep usando el comando ps y egrep a egrep . Una vez más, los procesos zombies tienen una bandera de estado de “Z” y, por lo general, también verá “extinto”.

Escriba lo siguiente:

Se enumeran los procesos zombies.

Esta es una forma más ordenada de descubrir los ID de proceso de los zombies que desplazarse hacia adelante y hacia atrás en la top . También vemos que una aplicación llamada “badprg” generó estos zombies.

El ID de proceso del primer zombi es 7641, pero necesitamos encontrar el ID de proceso de su proceso padre. Podemos hacerlo usando ps nuevamente. Usaremos la opción de salida ( -o ) para decirle a ps que muestre solo el ID de proceso del padre, y luego lo pasaremos con el ppid= .

El proceso que queremos encontrar se indicará usando la opción -p (proceso) y luego pasando el ID de proceso del zombi.

Por lo tanto, escribimos el siguiente comando para buscar la información del proceso para el proceso 7641, pero solo informará el ID del proceso principal:

Nos dijeron que el ID del proceso principal es 7636. Ahora podemos hacer una referencia cruzada usando ps una vez más.

Vemos que esto coincide con el nombre del proceso principal anterior. Para matar el proceso principal, use la opción SIGKILL con el comando kill de la siguiente manera:

Dependiendo del propietario del proceso principal, es posible que también deba usar sudo .

Los zombis no dan miedo …

… A menos que estén en una horda masiva. Algunos no son motivo de preocupación y un simple reinicio los eliminará.

Sin embargo, si nota que una aplicación o un proceso siempre genera zombis, eso es algo que debería analizar. Lo más probable es que sea solo un programa escrito de manera descuidada, en cuyo caso, quizás haya una versión actualizada que se limpie adecuadamente después de sus procesos secundarios.

cómo

Cómo conectar una cuenta de PlayStation Network a Discord, fácil

Published

on

By

Cómo conectar una cuenta de PlayStation Network a Discord

Sony PlayStation y Discord desarrollan relaciones cooperativas al lanzar nuevas funciones.

Lanzado desde TheVerge, Discord ha lanzado oficialmente una función que permite a los usuarios conectar la cuenta PlayStation Network (PSN) a la aplicación Discord.

Una vez que la cuenta de PSN está conectada a Discord, sus amigos en Discord pueden ver la actividad de juego del usuario.

Cuando un usuario juega un título de juego, los amigos de Discord pueden ver qué juego está jugando actualmente el usuario.

Además, los usuarios pueden agregar una ID de PSN a su perfil de Discord para que sea más fácil para otros agregar usuarios a un servicio.

Connect a PlayStation Network Account to Discord

Cómo conectar una cuenta de PSN a Discord

  1. Abra la última versión de la aplicación Discord en su computadora portátil, PC o teléfono inteligente.
  2. Abra Configuración de usuario o Configuración de usuario.
  3. Haga clic en la opción Conexiones y luego haga clic en “Conectar sus cuentas”.
  4. Inicie sesión con su cuenta de PSN y su cuenta se conectará automáticamente a Discord.

El lanzamiento de la función para conectar cuentas de PSN a la aplicación Discord es una asociación entre Sony PlayStation y Discord.

Para información, Sony y Discord han colaborado oficialmente desde mayo de 2021.

La asociación acercará las experiencias de Discord y PlayStation en consolas y dispositivos móviles.

Cómo conectar una cuenta de PSN a Discord

Actualmente, la integración de funciones entre PlayStation y Discord sigue siendo bastante limitada.

Además, las funciones de integración de PSN y Discord se están implementando por etapas.

Es posible que algunos usuarios aún no puedan conectar su cuenta de PSN a Discord porque la actualización aún no está disponible.

Manténgase al día con nosotros para conocer los últimos desarrollos de información tecnológica.

Continue Reading

cómo

Cómo ver Samsung Galaxy Unpacked 2022, regístrese primero aquí

Published

on

By

Cómo ver Samsung Galaxy Unpacked 2022, regístrese primero aquí

Samsung anunció oficialmente los planes de la compañía para realizar un evento Samsung Galaxy Unpacked2022.

Después de una larga espera, Samsung Indonesia también anunció un evento de transmisión en vivo Samsung Galaxy Unpacked 2022 a través del sitio web oficial.

En su anuncio, Samsung Indonesia declaró que el Samsung Galaxy Unpacked se llevaría a cabo el 9 de febrero de 2022, alrededor de las 22:00 WIB.

Samsung Galaxy Unpacked 2022 con el título “The Epic Standard”.

El encabezado indica que los últimos productos Samsung lanzados en Galaxy Unpacked son productos altamente estandarizados.

Para aquellos de ustedes que no están familiarizados con este evento, Galaxy Unpacked generalmente se lleva a cabo para presentar los dispositivos insignia de Samsung.

Por ejemplo, en el Galaxy Unpacked 2021 que se llevó a cabo en agosto pasado, Samsung lanzó sus dos teléfonos plegables emblemáticos, a saber, el Galaxy Z Flip3 5G y el Galaxy Z Fold3 5G.

Para este evento, Samsung Galaxy Unpacked contará con Samsung Galaxy S22Series.

La serie Samsung Galaxy S22 se predice como un teléfono celular multifunción que puede admitir el trabajo, el entretenimiento, la multitarea, la creación de contenido y las actividades de juego.

Samsung confirmó que la compañía integrará su último chipset Exynos 2200 en el Samsung Galaxy S22.

Exynos 2200 está diseñado como un conjunto de chips móvil con un rendimiento superior de juegos y gráficos.

El Exynos 2200 es el primer chipset móvil del mundo que incluye una GPU con arquitectura de gráficos AMD RDNA 2.

Samsung Exynos 2200 tiene una GPU llamada “Xclipse”.

El vicepresidente sénior de AMD Radeon, David Wang, dijo que “Xclipse” es la primera generación de procesadores gráficos AMD RDNA de varias generaciones que se prevé que estén presentes en el conjunto de chips Exynos.

Samsung afirma que la GPU clipse puede brindar una nueva experiencia en la industria de los juegos móviles.

Cómo ver Samsung Galaxy Unpacked 2022

Los fanáticos que estén interesados ​​​​en ver el evento Galaxy Unpacked 2022 deben registrarse previamente.

Estos son los pasos de preinscripción para ver Galaxy Unpacked 2022.

  1. Visite el sitio web oficial de Samsung Spanish siguiendo el enlace.
  2. Después de ingresar a la página principal, haga clic en el botón de preinscripción en el cartel Galaxy Unpacked 2022.
  3. Será dirigido a la página de registro para completar sus datos personales.
  4. Complete sus datos personales, correo electrónico y número de teléfono móvil, luego marque la casilla de verificación de aprobación y “No soy un robot.
  5. Haga clic en “Siguiente” y su prerregistro se habrá realizado correctamente.

Continue Reading

cómo

Microsoft Office es difícil de desinstalar, siga estos pasos alternativos

Published

on

By

Microsoft Office es difícil de desinstalar, siga estos pasos alternativos

Si desea eliminar Microsoft Office en Windows que está utilizando, ya sea porque desea actualizarlo a una versión más reciente o simplemente desea eliminar la aplicación, puede usar el paso clásico eliminando Microsoft Office directamente desde la página Configuración> Aplicaciones , o desde el Panel de control. > Programas y características, algunos usuarios incluso prefieren aplicaciones de desinstalación como Iobit Uninstaller o Revo Uninstaller.

Pero en algunos casos, Microsoft Office a veces es difícil de desinstalar, ya sea porque aún puede ser utilizado por el sistema, o hay otras cosas, cómo superar esto, Microsoft recomienda a los usuarios que eliminen Microsoft Office con una herramienta de su creación llamada Herramienta Asistente de soporte y recuperación de Microsoft.

Entonces, cuales son los pasos? A continuación, resumimos los pasos cortos.

Paso 1. Primero, descargue la herramienta Asistente de recuperación y soporte técnico de Microsoft.

Paso 2. A continuación, abra e instale la herramienta Asistente de recuperación y soporte de Microsoft como de costumbre.

Microsoft Office es difícil de desinstalar

Después de pasar por el acuerdo de licencia y así sucesivamente, se encontrará con una pantalla como la de la siguiente imagen.

Microsoft Office es difícil de desinstalar, siga estos pasos alternativos

Paso 3. En este paso, puede seleccionar la versión de Microsoft Office que desea eliminar, por ejemplo, Microsoft Office 365 Professional Plus, verifique y luego haga clic en Siguiente.

Después de eso, se ejecutará el proceso de desinstalación y, como de costumbre, si hay una aplicación de Microsoft Office que está abierta actualmente, se le indicará que primero guarde los datos, además de que los documentos que haya editado tampoco se eliminarán, porque solo se elimina la aplicación, por lo que este paso es seguro.

Bueno, intenten chicos, aquí hay pasos alternativos para eliminar Microsoft Office usando la herramienta Asistente de soporte y recuperación de Microsoft.

Referencia: PureInfoTech

Continue Reading

Trending

Share via
Copy link
Powered by Social Snap