Quero saber quais são as diferenças no comportamento de um daemon, processo e serviço em execução no Ubuntu.
Quero saber quais são as diferenças no comportamento de um daemon, processo e serviço em execução no Ubuntu.
Respostas:
Daemons - Daemon não representa Disk and Execution Monitor ( http://www.takeourword.com/TOW146/page4.html ). Eles são os processos executados em segundo plano e não são interativos. Eles não têm terminal de controle.
Eles executam certas ações em horários predefinidos ou em resposta a determinados eventos. No * 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 possui um comando chamado service , é usado apenas para executar scripts init (abreviação de inicialização scriptrunlevel ).
Processo - Processo é um programa em execução. Em um determinado momento, ele pode estar em execução , em suspensão ou zumbi (processo concluído, mas aguardando que o processo pai pegue o valor de retorno).
Fontes e informações adicionais :
Um daemon é um programa não interativo em segundo plano . Ele é desanexado do teclado e da exibição de qualquer usuário interativo. A palavra daemon para denotar um programa em segundo plano é da cultura Unix; não é universal.
Um serviço é um programa que responde a solicitações de outros programas por meio 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 portas NFS é fornecido como um serviço separado de portmap, que é implementado como o portmapd
daemon.
Um serviço não precisa ser um daemon, mas geralmente é. Um aplicativo de usuário com uma GUI pode ter um serviço embutido nele: por exemplo, um aplicativo de compartilhamento de arquivos. Outro exemplo é o serviço X Window, que está em segundo plano: ocupa 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 a todos os movimentos de teclas e movimentos do mouse.
Um processo é um ou mais encadeamentos de execução, juntamente com seu conjunto compartilhado de recursos, dos quais os mais importantes são o espaço de endereço e os descritores de arquivo aberto. Um processo cria um ambiente para esses encadeamentos de execução que parecem ter uma máquina inteira só para eles: é 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 encadeamento 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 ao 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 semelhantes ao Unix. Os recursos do sistema são compartimentados em processos, e quase tudo é entendido como acontecendo dentro de um processo ou de outro.