O que é o plano de fundo e os processos de primeiro plano nos trabalhos

1

Estou estudando Redhat Linux 7, tópico Monitorando e gerenciando processos Linux nele eu entendo Processess e seu comando. Mas eu não entendo "Controlling Jobs" e executando trabalhos em segundo plano e sua prática seus processos de fundo e primeiro plano. Você pode explicar este termo para nós?

    
por Sagar Dalvi 24.12.2014 / 09:45

3 respostas

5

A maioria dos comandos emitidos a partir de um shell interativo é executada em primeiro plano . Isso basicamente significa que você deve esperar que o comando executado (ou processus) pare antes de fazer outra coisa. Para programas / scripts longos / complexos, a alternativa é executá-los no fundo . Isso significa que você pode continuar trabalhando enquanto o programa longo é executado.

O e comercial & no final de um comando faz isso. Você também pode usar ctrl-Z para suspender um comando em primeiro plano e lançá-lo em segundo plano com o comando bg . Você pode, a partir de então, gerenciar essas tarefas de planos de fundo ( jobs command), eliminá-las, etc.

Por favor, note que o comando background não é não separado do seu tty: pode haver alguns casos em que um comando background aguarda a entrada do usuário (consulte o comando fg para trazer um job para o primeiro plano) . Se você encerrar sua sessão de terminal (através do fechamento do terminal, logout, desligamento, etc.), os trabalhos em segundo plano também poderão ser eliminados (consulte nohup para obter mais detalhes).

    
por 24.12.2014 / 21:34
1

em palavras simples,

Todo processo que você inicia é executado em primeiro plano. Obtém sua entrada do teclado e envia sua saída para a tela.

$ls ch*.doc

que listam todos os arquivos no diretório atual,

Um processo em segundo plano é executado sem estar conectado ao seu teclado. Se o processo de segundo plano requer qualquer entrada de teclado, ele aguarda. A vantagem de executar um processo em segundo plano é que você pode executar outros comandos; você não precisa esperar até que termine para começar outra!

A maneira mais simples de iniciar um processo em segundo plano é adicionar um "e" comercial (&) no final do comando.

$ls ch*.doc &

alguns links abaixo ajudarão você

link

link

link

    
por 24.12.2014 / 09:56
1

Executar um programa em segundo plano adicionando & no final é como executar um aplicativo minimizado no Windows ou Mac. E usar o comando fg é como restaurá-lo para a área de trabalho.

Em comparação, quando você pressiona ctrl+z enquanto um programa está em execução, ele suspenderá sua execução. O que significa que será impedido de completar o que está fazendo e enviado para o segundo plano.

Além disso, os programas estão ligados à sua sessão atual, por isso, se você sair do seu terminal, todos os programas em execução ou suspensos em segundo plano também serão encerrados.

    
por 25.12.2014 / 06:03