Programa en ejecuciòn

Luis W. Sevilla sevilla_lui en gva.es
Mie Ago 18 12:15:11 CEST 2004


Mensaje citado por Miguel Angel Garcia <miguela.garcia3 en alu.uclm.es>:

> En Windows se puede hacer (con habilidad) que un proceso sea un
> "fantasma" y que no aparezca ni siquiera entre la lista de procesos. Eso
> lo aprovechan algunos virus para no ser detectables.
> 
> En GNU/Linux no existe esa posibilidad. Un proceso sin Id no es
> alcanzable, por lo que no puede estar en ejecución.
> 
> Aún no he logrado comprender qué utilidad tiene un proceso fantasma. A
> parte de procesos mal intencionados, claro.
> 
> De todas formas, si no has escrito tu programa a propósito para no ser
> detectado, deberías tener un identificador de proceso (no de ventana; la
> ventana es una "cualidad" del proceso).
> 
> La solución más simple me parece la de crear un ficherito "lock" y si el
> fichero existe, da una alarma de proceso activo y en paz. Si el fichero
> no existe, arranca sin problemas y borra el fichero al acabar (acuérdate
> de borrarlo también en el arranque de Windows, por si se te quedara
> frito).
Si, esa del fichero lock es muy usada en linux/unix. Lo más normal (para
prevenir tener dos ejecuciones simultaneas) es poner el id del proceso en un
fichero de texto que se borra al salir normalmente. La existencia de ese
fichero
se comprueba en el arranque, y si existe se comprueba que el proceso con ese
id está en ejecución. Si no lo está borras el fichero (poniendo el nuevo con el
id de la ejecución actual), y si lo está sales con un mensaje de error.
Esta solución es bastante elegante, además de muy difundida.
> 
> El mié, 18-08-2004 a las 11:47, Julio Canto escribió:
> > Catalin Lungu wrote:
> > 
> > >El problema es que el programa es un proceso fantasma y no tiene ninguna
> > >ventana. A mi interesaría si al ejecutarlo devuelve algún ID del hilo
> para
> > >luego buscarlo en la lista de procesos activos.
> > >
> > >Un saludo,
> > >CL
> > >  
> > >
> > Hmmm... que no veas una ventana no significa que no este ahi :) Si lo 
> > que estas lanzando es un programa desde python, tiene que tener una 
> > ventana asociada, aunque este oculta (o eso creo). Lo de proceso 
> > fantasma he de confesar que me suena a nuevo, no lo habia escuchado nunca
> :?
> > Un saludo,
> >     JC
> > _______________________________________________
> > Python-es mailing list
> > Python-es en aditel.org
> > http://listas.aditel.org/listinfo/python-es
> -- 
> Miguel Ángel García
> http://arco.inf-cr.uclm.es/~miguel
> 
> Software Libre para Gente Libre
> Free Software for Free People
> 
> 


  Luis W. Sevilla
  Equipo de desarrollo gvSIG
  http://www.gvsig.gva.es
  Conselleria de Infraestructuras y Transporte
  Generalitat Valenciana
  Valencia - España




Más información sobre la lista de distribución Python-es