SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: manix en Miércoles 15 de Octubre de 2008, 18:51

Título: Procesos PID
Publicado por: manix en Miércoles 15 de Octubre de 2008, 18:51
hola
recien empiezo con c y por el momento voy tirando, tengo un problema con un programita que tiene como objetivo matar un proceso, en este caso en linux, el programa me funciona xq paso las ordenes por system(); en este caso le paso un ps | grep ... para sacar el numero de PID del proceso y luego con otro system(kill -9 PID), el problema es que no es muy correcto el uso del system o eso opina mi profesor, ya que si creas un programa con system(format c:); y lo ejecutas con permisos puede dañar la maquina,...
y nada que no se como mas puedo hacer... si alguien conoce alguna otra forma o algun metodo en c para buscar un proceso en concreto y eliminarlo...
Título: Re: Procesos PID
Publicado por: m0skit0 en Jueves 16 de Octubre de 2008, 09:49
Puedes mandarle un mensaje SIGKILL (para ver los mensajes disponibles kill -l) con la llamada al sistema int kill(pid_t pid, int sig); (que no el comando kill qeu tú comentas, que sirve para lo mismo).

Aquí tienes una referencia: http://linux.die.net/man/2/kill (http://linux.die.net/man/2/kill" onclick="window.open(this.href);return false;)

No olvides que también puedes hacer man 2 kill en tu consola... Saludos.