[eside-ghost] Guardar el estado de un proceso a disco?

txipi txipi en sindominio.net
Mar Mar 27 00:45:47 CEST 2007


Aupa!

On Mon, 26 Mar 2007 23:56:30 +0200
txipi <txipi en sindominio.net> wrote:

> ¿Lanzarlo virtualizado y grabar un snapshot de su RAM virtualizada? Si
> no, la cosa se complica a saco. Puedes intentar crearte algun
> restaurador a manija pillando de /proc/PID/mem o similares toda la
> vram del proceso y luego lanzar el ejecutable, ptracearlo y pokear
> toda su vram con lo que tenías. Pero aún así, los descriptores de
> ficheros y demás estarán mal. Igual algún semidios del lowlevel tipo
> sheroc o así pueda decir algo más. Mi opción sería usar
> user-mode-linux, qemu o similares y cuajar la RAM virtual en un
> snapshot.

Gracias a los enlaces de Borja y Santi me he puesto a mirar un poco el
tema y me he quedado prendado de http://cryopid.berlios.de/, que
congela los procesos sin usar una VM. Parece que con procesos
multi-thread, como el 99% de las aplicaciones de X, no tira, pero para
aplicaciones de consola funciona bien (o eso prometen), y además genera
autoextraibles ejecutables, tope comfort :-)

Otra cosa parecida e igual de apasionante (si te enrollan estos temas,
claro) es regenerar un ELF partiendo solamente de su imagen en RAM
(recordemos que en UNIX no se protege el fichero que originó un
proceso). Es un jaleo, porque es deshacer la labor del cargador del
sistema, pero a veces se puede hacer :-)))

-- 
Agur,
  txipi


Más información sobre la lista de distribución eside-ghost