FERRAMENTAS LINUX: Diferenças entre o System D e o Upstar

segunda-feira, 27 de abril de 2015

Diferenças entre o System D e o Upstar

Entenda a Diferença entre o System D e o Upstart.

Nesse post eu vou tentar explicar as diferenças  entre o System D e o Upstat.

Conheçendo o System D

O System D foi criado por Lennart Poettering que é funcionário da Red Hat e contribuidor do Fedora Linux e por isso que muita gente atribui  o System D à Red Hat sendo que estão errados, pois embora hoje na Red Hat projetos como System D pois tanto a idéia original quanto o esforço foram feitos por Lennart em seu tempo livre e não como projeto de trabalho pela empresa .

A motivação por trás da criação do System D é bem mais ambiciosa do que a do Upstart a idéia principal é que há muitas funcionalidades de kernel Linux que são incríveis e avançadas mas não usadas a não ser em ambientes muito específico pois não há infra-estrutura comum no espaço de usuário para fazer uso da funcionalidade e disponibilizá-la para o resto do sistema. Como exemplo pode-se citar os cgroups (control groups) que são formas de se juntar os processos em uma embalagem permitindo tratar esse grupo de processo como um todo.
Esses grupos podem ser usados para limitar as partes do sistema os processos que o compõe que podem ser vistas e com isso é criada uma visão virtual mais limitada o sistema, impor limites de uso de memória, de operações de I/O, etc.
Uma das primeiras funcionalidades do System D foi a utilização de control groups. Cada serviço que é inicializado pelo System D é dentro de um cgroup próprio isso significa que todos os pocessos que são criados naquele serviço também são terminados por ele.

O System D abandona o uso de Scripts de inicialização mesmo que possa chamá-los para inciar os serviços.

O uso de cgroups pelo System D garante que não fiquem processos para trás.

O System D resolveu o problema do desempenho de 2 formas:

A primeira foi a remoção dos scripts shell, cada serviço é especificado em um arquivo de configuração chamado de "unit" onde são descritas as informações que são usadas pelo init para a criar eo cuidar do processo.
Isso retira a necessidade de se inicializar um interpretador shell e da execução de complexos scripts do System V.

A segunda é a criação de todos os sockets de serviços controlados pelo System D (eles são descritos no arquivo unit) e quando ele recebe uma conexão ele inicia o serviço e passa para o socket.

Conhecendo o Upstart

 O Upstart foi criado pela Canonical antes dos processadores multi-núcleo, tendo como principal preocupação a melhora do desempenho do Boot usando o processo de paralelismo a idéia desse processo é substituir a necessidade de estabelecer dependências entre o serviço de forma declarativa por estabelecer condições para que o serviço seja executado.
O Upstart supervisiona o serviço com competência isso quer dizer que se um serviço morrer ele pode ser inicializado novamente sem que o processo-pai  tome conhecimento.

A comunicação dos serviços com o próprio init, no Upstart acontece pelo D-BUS  "O novo barramento" padrão nos Sistemas GNU/LINUX.

 Ao ler a Faq do Upstart podemos ter uma idéia do projeto que inclui:
  • Substituir os daemons cron, atd e anacron,
  • Talvez substituir o inetd,
  • Jamais, em hipótese alguma, substituir hal, udev, DeviceKit e acpid.


 Bom é isso.

E ai gostou do Post?

Deixe um comentário !!

Até a próxima !!

Nenhum comentário:

Postar um comentário