Quando você executa o processo em um terminal, seu estado de processo é marcado com um + porque é o processo de primeiro plano nesse terminal. Isso significa, entre outras coisas, que o terminal pode ser usado para controlar o processo. Por exemplo, pressionar Ctrl-C
resultará em um sinal SIGINT
sendo enviado para o processo. Dependendo dos manipuladores de sinais no programa, isso normalmente terminará o processo. Além disso, fechar o terminal enviará um sinal SIGHUP*
para o processo.
Quando você executa o processo a partir do Eclipse, o + não está lá porque o processo não está no grupo de processos de primeiro plano de nenhum terminal. Na verdade, a menos que você tenha iniciado o Eclipse a partir de um terminal (e não baseado em &
ou ^Z
), o próprio Eclipse não terá um terminal de controle e nenhum dos seus processos filhos também.
*) HUP para "desligar", desde os dias em que os terminais eram máquinas físicas que se conectavam a computadores através de linhas discadas seriais