Вы находитесь на странице: 1из 29

1

Sistema operacional
distribuído AMOEBA

0
2
• Discentes: Erikles Ribeiro
Guilherme Ramos
Iury Hittalo
Renan Oliveira
Vanilson Lessa

• Docente: Fábio Lima

• Matéria: Sistemas distribuídos

• Turma: 4DS
1
DEFINIÇÃO
3

Amoeba é um sistema operacional distribuído: ele faz uma


coleção de computadores e equipamentos de E / S agir como se
fosse um único computador.

Em linhas gerais, os usuários não se dão conta de quantos ou


onde ficam localizados os processadores que executam seus
comandos, nem mesmo o número ou localização dos servidores
de arquivos que armazenam seus arquivos. Aos olhos do usuário
final, parece-se com um sistema comum de compartilhamento
de tempo.
2
HISTÓRICO DO AMOEBA
4

Sistema desenvolvido na Universidade Vrije, em Amsterdam,


iniciou seu projeto em 1981, primeiramente na área de
computação paralela. Teve como seus criadores, Tanenbaum, A.S.,
e alguns de seus alunos de doutorado. Seu protótipo em 1983
ganhou a versão 1.0. Já em sua versão 3.0, baseada em RPC’s
(Remote Procedure Calls), implementou o primeiro projeto de um
sistema distribuído a atingir uma grande região da Europa.

3
OBJETIVOS DO AMOEBA
5

Muitos projetos de pesquisa em sistemas operacionais


distribuídos começaram com um sistema existente (por exemplo,
UNIX) e adicionaram novos recursos, como rede e um sistema de
arquivos compartilhado, para torná-lo mais distribuído. O projeto
Amoeba adotou uma abordagem diferente. Tudo começou com
uma ardósia limpa e desenvolveu um novo sistema a partir do
zero.

4
OBJETIVOS DO AMOEBA
6

O objetivo principal do projeto era construir um sistema


operacional distribuído transparente. Para o usuário comum, usar
o Amoeba é como usar um sistema tradicional de
compartilhamento de tempo como o UNIX.

5
OBJETIVOS DO AMOEBA
7

Um objetivo secundário da Amoeba é fornecer um testbed para


fazer programação distribuída e paralela. Enquanto alguns
usuários apenas usam o Amoeba da mesma maneira que usariam
qualquer outro sistema de timesharing, a maioria dos usuários
está especificamente interessada em experimentar algoritmos,
linguagens, ferramentas e aplicativos distribuídos e paralelos.

6
COMPATIBILIDADE COM SISTEMAS OPERACIONAIS
8

Para utilização do sistema Amoeba é necessário a instalação de


um dos sistemas operacionais baseados no UNIX, como o SunOs 3
ou SunOs4.

7
ARQUITETURA DO SISTEMA AMOEBA
9

Todo o poder de computação está localizado em um ou mais


conjuntos de processadores. Um conjunto de processadores
consiste em um número substancial de CPUs, cada uma com sua
própria memória local e conexão de rede.

8
ARQUITETURA DO SISTEMA AMOEBA
10

A memória compartilhada não é necessária, ou mesmo esperada,


mas, se estiver presente, pode ser usada para otimizar a passagem
de mensagens, fazendo cópias de memória para memória, em vez
de enviar mensagens pela rede.

9
ARQUITETURA DO SISTEMA AMOEBA
10

As máquinas podem ser de diferentes arquiteturas, por exemplo,


uma mistura de máquinas 680x0, 386 e SPARC. Amoeba foi
projetada para lidar com múltiplas arquiteturas e sistemas
heterogêneos. É até possível que os filhos de um único processo
sejam executados em diferentes arquiteturas.

10
ARQUITETURA DO SISTEMA AMOEBA
12

Amoeba consiste em duas partes básicas: um microkernel, que é


executado em todos os processadores, e uma coleção de
servidores que fornecem a maior parte da funcionalidade
tradicional do sistema operacional.

11
SERVIDORES
13

Tudo o que não é feito pelo kernel é feito pelos processos do


servidor. A ideia por trás desse design é minimizar o tamanho do
kernel e aumentar a flexibilidade. Ao não construir o sistema de
arquivos e outros serviços padrão no kernel, eles podem ser
alterados facilmente, e várias versões podem ser executadas
simultaneamente para diferentes populações de usuários.

12
SISTEMA DE ARQUIVOS
14

O sistema de arquivos padrão consiste em 3 servidores:

• Servidor de marcação:
- Gerencia o armazenamento de arquivos.
• Servidor de diretórios:
- Nomeia arquivos e gerencia diretórios.
• Servidor de replicação:
- Manipula a replicação de arquivos.

13
SISTEMA DE ARQUIVOS
15

O sistema operacional não dita a preferência de sistemas de


arquivos usados, mas uma ótima opção é o servidor bullet:

• Possui gerenciamento básico de arquivos;


• Arquivos são imutáveis (mas podem ser excluídos);
• Facilitam a replicação automática.

14
GESTÃO DE PROCESSOS
16

Um processo no Amoeba é basicamente um espaço de endereço e


uma coleção de threads que são executados nele. Um processo
com um thread é aproximadamente análogo a um processo do
UNIX ou do MS-DOS em termos de como ele se comporta e o que
ele pode fazer.

15
PROCESSOS
17

Um processo é um objeto na Amoeba. Quando um processo é


criado, o processo pai recebe um recurso para o processo filho,
assim como com qualquer outro objeto recém-criado. Usando
esse recurso, a criança pode ser suspensa, reiniciada, sinalizada ou
destruída.

16
THREADS
18

Amoeba suporta um modelo de threads simples. Quando um


processo é iniciado, ele tem um thread. Durante a execução, o
processo pode criar encadeamentos adicionais e encadeamentos
existentes podem ser finalizados.

O número de threads é, portanto, completamente dinâmico.


Quando um novo encadeamento é criado, os parâmetros para a
chamada especificam o procedimento a ser executado e o
tamanho da pilha inicial.
17
FUNCIONAMENTO DE MEMÓRIA
19

• Um processo pode ter qualquer quantidade de segmentos;


• Os segmentos são criados pelos processos que possuem
chamadas para criar, excluir, visualizar e escrever outros
segmentos ;
• Quando um processo se inicia, precisa ter pelo menos um
segmento;
• Possui alocação contígua.

18
GERENCIAMENTO DE MEMÓRIA
20

Amoeba tem um modelo de memória extremamente simples.


Um processo pode ter qualquer número de segmentos que
desejar e pode ser localizado onde quer que ele esteja no
espaço de endereço virtual do processo.

19
GERENCIAMENTO DE MEMÓRIA
21

Os segmentos não são trocados ou paginados, portanto, um


processo deve ser totalmente residente na memória para ser
executado. Além disso, embora o hardware MMU seja usado, cada
segmento é armazenado contiguamente na memória.

20
COMUNICAÇÃO NO AMOEBA
22

O amoeba suporta dois tipos de comunicação:


• Remote Procedure Call (RPC);
• Comunicação em grupo.

21
COMUNICAÇÃO NO AMOEBA
23

Remote Procedure Call (RPC):


• Consiste em o cliente enviar uma mensagem para o
servidor;
• O servidor enviará uma resposta ao cliente;
• O cliente só envia uma outra mensagem depois que o
servidor responde a sua mensagem anterior.

22
COMUNICAÇÃO NO AMOEBA
24

Comunicação em grupo:
• Um ou mais processos cooperam para executar alguma
tarefa ou fornecer algum serviço;
• Grupos são fechados;
• Usa endereçamento broadcast e multicast.

23
GERENCIAMENTO DE USUÁRIO
25

• Usuário ao fazer login, é para todo o sistema (não apenas


para a máquina que usa);
• Multiprocessador pessoal de 10 ou 100 nós é dado a cada
usuário (não recomendado para o orçamento disponível) ;
• Usuários podem livremente criar seus próprios
servidores;
• Usuários podem usar sistemas de arquivos diferentes
e incompatíveis ao mesmo tempo.

24
RAZÕES PARA ADERIR AO SISTEMA
26

• Compartilhamento de dados;
• Compartilhamento de periféricos;
• Economia;
• Comunicação;
• Correio Eletrônico;
• Flexibilidade;
• Melhor aproveitamento dos Recursos.

25
RAZÕES PARA ADERIR AO SISTEMA
27

• Pouco Software disponível;


• A rede pode causar problemas;
• Falta de segurança.

26
REFERÊNCIAS BIBLIOGRÁFICAS
28

• TANENBAUM, A. Distributed Operating Systems. 1. ed. United States:


Prentice Hall, 1994.

• Site Prezi, Um Estudo do Sistema Operacional Amoeba. Disponível em:


<https://prezi.com/ftnekssokgcz/um-estudo-do-sistema-operacional-amoeba/>.
Acesso em 28 de março de 2019

• Site Researchgate, Reliable Processing on the Seljuk-Amoeba Operating


Environment. Disponível em:
<https://www.researchgate.net/publication/221091055_Reliable_Processing_o
n_the_Seljuk-Amoeba_Operating_Environment>. Acesso em 26 de março de
2019
27
REFERÊNCIAS BIBLIOGRÁFICAS
14
• TANENBAUM, A. Distributed Operating Systems. 1. ed. United States:
Prentice Hall, 1994.

• Site Prezi, Um Estudo do Sistema Operacional Amoeba. Disponível em:


<https://prezi.com/ftnekssokgcz/um-estudo-do-sistema-operacional-amoeba/>.
Acesso em 28 de março de 2019

• Site Researchgate, Reliable Processing on the Seljuk-Amoeba Operating


Environment. Disponível em:
<https://www.researchgate.net/publication/221091055_Reliable_Processing_o
n_the_Seljuk-Amoeba_Operating_Environment>. Acesso em 26 de março de
2019
28

Вам также может понравиться