** já que estão fazendo top-posting... **
Na situação que você descreveu: "abrir um terminal, editar um arquivo
com o vim e fechar o terminal sem sair do vim", o correto seria o vim
ser fechado. Quando se mata o processo pai, todos os filhos devem
morrer.
Algo errado ocorreu aí. Aqui se eu faço isso que você descreveu, o vim
é fechado.
Em 2012-07-24 10:03, Carlos Fagiani Junior escreveu:
bom dia,
Perfeito, boa explicação, vou prestar atenção e sempre matar os
filhos antes dos pais... :|
Em terça-feira, 24 de julho de 2012 09h41min13s UTC-3, Alexandre
Mulatinho escreveu:
Bom dia,
Olha teoricamente, falando de processos do unix, você matou um pai
e deixou o filho, e o filho quis vingança :P
Falando sério, todo processo tem um pai, a não ser o processo init
(1). Sendo assim, quando voce abriu um terminal, o terminal abriu
uma shell (bash, sh, csh, ksh) e depois vc abriu o vi. Logo, o vi é
filho da shell que é filho do terminal, se vc fechar o terminal no
X vc nao fechou o vi e ele vai ficar em background, o que acontece
aí é que voce nao mandou o processo do vi para background e ele se
perdeu, as vezes isso torna o processo um ZUMBI literalmente, outras
vezes ele fica tentando achar o pai e provoca um loop infinito que
termina fazendo o consumo da CPU subir como no seu caso.
Espero ter ajudado um pouco na explicação,
Atenciosamente,
ALEXANDRE MULATINHO
2012/7/23 Carlos Fagiani Junior <[email protected] [1]>
Se eu editar um arquivo pelo "vi" e não sair de editar com o
":q!" e simplesmente fechar o terminal no "x" da janela... esse
processo vai continuar na memória, e explode o processamento a
100%
até eu buscar o processo, tipo no htop e finaliza-lo... Alguem
sabe o porque desse estouro de processamento???
--
vic
http://choppnerd.com
http://donttrack.us | http://dontbubble.us
--
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br
Antes de perguntar:
http://www.istf.com.br/perguntas/
Para sair da lista envie um e-mail para:
[email protected]