Qual é a diferença entre um aplicativo, processo e serviços?

39

Como são essas "coisas" fundamentalmente diferentes no Windows?

Todos os processos não estão sendo executados?

Parece que todo Aplicativo tem um processo associado que o encerra se for desligado. Um processo pode gerenciar mais de uma instância de aplicativo, parece. E os Serviços, nem tenho certeza do que são exatamente.

Eles não são processos em si?

    
por Justin L. 11.11.2010 / 09:08

3 respostas

63

Ambos os aplicativos e serviços têm processos associados a eles.

Um aplicativo é um programa com o qual você interage na área de trabalho . Isso é o que você gasta quase todo o seu tempo usando no computador. Internet explorer, microsoft word, iTunes, skype - todas elas são aplicações.

Um processo é uma instância de um determinado executável ( .exe arquivo de programa) em execução. Uma determinada aplicação pode ter vários processos em execução simultaneamente. Por exemplo, alguns navegadores modernos, como o google chrome, executam vários processos de uma vez, com cada guia sendo, na verdade, uma instância / processo separado do mesmo executável. Em alguns casos, aplicativos complicados podem ter vários processos; por exemplo, o Visual Studio executa um processo separado quando compila o código de quando ele exibe o IDE. No entanto, na maioria das vezes, um determinado aplicativo está sendo executado a partir de um único processo; por exemplo, não importa quantas janelas de palavras da Microsoft você tenha aberto, apenas uma única instância de winword.exe está sendo executada.

Um serviço é um processo que é executado em segundo plano e não interage com a área de trabalho. No Windows, os serviços quase sempre são executados como uma instância do processo svchost.exe , o processo do host de serviço do Windows; no entanto, às vezes há exceções a isso.

Às vezes, os processos podem ser executados em segundo plano sem interagir com a área de trabalho, mas sem serem instalados como um serviço. Muitos drivers de dispositivo com recursos aprimorados fazem isso. Por exemplo, um driver do touchpad geralmente tem um processo que é executado quando um usuário faz login e manipula os recursos especiais do touchpad, mas não é um serviço e não mostra nenhuma janela para o usuário.

Às vezes, um aplicativo pode depender de um determinado serviço. Imprimir a partir de qualquer programa requer que o serviço de spooler de impressão esteja ativo. Os pacotes de instalação ( .msi instaladores) exigem que o serviço instalador do Windows esteja em execução. Os programas antivírus geralmente empregam um serviço para que possam continuar em execução mesmo quando o usuário não está conectado.

Os processos geralmente saem quando um aplicativo é fechado, no entanto, isso nem sempre é o caso. Alguns programas, principalmente programas de download e de backup, podem continuar sendo executados em segundo plano sem exibir nenhuma janela. O antivírus também é um exemplo disso - além de usar um serviço, muitos aplicativos antivírus executam um processo silenciosamente em segundo plano, que exibe apenas um aplicativo para o usuário quando a ação é necessária.

    
por 11.11.2010 / 09:29
9

Ambos os aplicativos e serviços são processos. Os aplicativos são destinados a interagir com um único usuário, enquanto os serviços funcionam no sistema, mas não interagem diretamente com os usuários.

    
por 11.11.2010 / 09:16
0

Um serviço é geralmente um aplicativo em segundo plano que é executado quando o Windows é inicializado. geralmente executa alguma tarefa que os aplicativos instalados ou o próprio windows usa.

Um aplicativo independente é apenas um programa normal (a .exe ). Stand alone geralmente se refere a um único executável que pode ser executado sozinho.

Programas maiores, como o Word, exigem que muitos arquivos diferentes sejam executados.

    
por 19.07.2014 / 16:00