qual é a diferença técnica entre daemon, serviço e processo? [fechadas]

101

Eu quero saber quais são as diferenças de comportamento de um daemon, processo e serviço rodando no desktop ubuntu.

    
por krupal6022 23.09.2012 / 12:10

2 respostas

104

Daemons - Daemon não significa Disk and Execution Monitor ( link ). Eles são os processos que são executados em segundo plano e não são interativos. Eles não têm terminal de controle.

Eles executam determinadas ações em horários predefinidos ou em resposta a determinados eventos. Em * NIX, os nomes dos daemons terminam em d .

Serviços - No Windows, os daemons são chamados de serviços .

Se você está se perguntando por que o * NIX tem um comando chamado service , ele é usado apenas para executar scripts init (abreviação de scriptrunlevel de inicialização ).

Process - Process é um programa em execução. Em um determinado instante de tempo, ele pode ser em execução , sleeping , ou zumbi (processo concluído, mas aguardando que o processo pai seja escolhido o valor de retorno).

Fontes e mais informações :

por green 23.09.2012 / 12:23
34
  1. Um daemon é um programa não interativo. Ele é separado do teclado e da exibição de qualquer usuário interativo. O daemon de palavra para denotar um programa de segundo plano é da cultura Unix; não é universal.

  2. Um serviço é um programa que responde a solicitações de outros programas através de algum mecanismo de comunicação entre processos (geralmente em uma rede). Um serviço é o que um servidor fornece. Por exemplo, o serviço de mapeamento de porta NFS é fornecido como um serviço portmap separado, que é implementado como o daemon portmapd .

    Um serviço não precisa ser um daemon, mas geralmente é. Um aplicativo de usuário com uma GUI pode ter um serviço integrado: por exemplo, um aplicativo de compartilhamento de arquivos. Outro exemplo é o serviço X Window, que é tudo menos em segundo plano: ele assume a tela, o teclado e o dispositivo apontador. É um serviço porque responde a solicitações de aplicativos (para criar e manipular janelas, etc.), que podem até estar em outro lugar na rede. Mas o serviço X também responde ao movimento de cada tecla e mouse.

  3. Um processo é um ou mais threads de execução juntos com seu conjunto compartilhado de recursos, sendo os mais importantes o espaço de endereço e os descritores de arquivos abertos. Um processo cria um ambiente para esses encadeamentos de execução, que parecem ter uma máquina inteira para eles mesmos: é uma máquina virtual.

    Dentro de um processo, os recursos de outros processos, e do kernel, são invisíveis e não estão diretamente acessíveis (pelo menos não para um thread que está executando o código de espaço do usuário). Por exemplo, não há como se referir aos arquivos abertos de outro processo ou a seu espaço de memória; é como se essas coisas nem existissem.

    O processo, e sua relação com o kernel e outros processos, talvez constitua a abstração mais importante em sistemas operacionais do tipo Unix. Os recursos do sistema são compartimentalizados em processos, e quase tudo é entendido como acontecendo dentro de um processo ou outro.

por Anon 23.09.2012 / 18:06