2

Click here to load reader

Atividade sd

Embed Size (px)

Citation preview

Page 1: Atividade sd

Sistemas Operacionais Distribuídos

Até aqui foram abordados vários aspectos que procuram caracterizar, de maneira bastante clara, o que vem a ser um sistema distribuído. Contudo, para que um sistema seja realmente distribuído, no mais completo significado do termo, ele deverá apresentar-se aos seus usuários como uma entidade única. A entidade que confere essa característica a um sistema distribuído é o seu sistema operacional, denominado sistema operacional distribuído.

Um sistema operacional distribuído é aquele que torna invisível aos usuários a existência dos vários elementos processadores que estão a sua disposição. Desse modo, o conceito chave é a "transparência".

Uma outra forma de se definir um sistema operacional distribuído é como sendo uma máquina virtual organizada em níveis hierárquicos, cada qual funcionando como uma máquina abstraia, e possuidora das seguintes características: - Homogeneidade; - Descentralizarão de controle; - Compartilhamento dos recursos de comunicação; - Compartilhamento implícito dos recursos de computação; - Tolerância a faltas(falhas).

Dentro da filosofia de estruturação de sistemas operacionais distribuídos como máquinas abstraias estruturadas hierarquicamente, o núcleo é uma máquina virtual que situa-se imediatamente sobre o hardware do sistema. Em sistemas operacionais distribuídos, o núcleo do sistema operacional deverá estar distribuído, ou seja, deverá ser formado pelos vários núcleos individuais que fazem de cada elemento processador pertencente ao sistema distribuído. Esses núcleos individuais poderão ser iguais ou diferentes. Essa escolha é uma questão de projeto e depende do paradigma do sistema para o qual se destina o sistema operacional distribuído em questão. Núcleos iguais são mais adequados aos paradigmas "conjunto de processadores" e "orientado ao fluxo de dados", enquanto que núcleos diferentes são mais adequados aos paradigmas "hierárquico", "cache de cpu" e "cliente-servidor".

Sistemas Operacionais de Rede versus Sistemas Operacionais Distribuídos.

Os Sistemas Operacionais de Rede diferem dos Sistemas Operacionais Distribuídos nas seguintes características: cada elemento processador tem seu próprio sistema operacional; cada usuário trabalha no seu próprio elemento processador, necessitando quando necessário conexão remota para outro elemento processador, não existindo alocação dinâmica de processos; os usuários tem conhecimento da localização de seus arquivos, não sendo o sistema operacional que gerencia a localização aos mesmos; e os Sistemas Operacionais de Rede tem pouco ou nenhum recurso para tolerância a faltas (falhas).

O grau de transparência pode ser analisado com relação a três aspectos: Gerenciamento de arquivos, mecanismos de proteção e gerenciamento deprocessos.

O gerenciamento de arquivos pode ser feito de três maneiras. Na primeira, cada elemento processador tem seu gerente de arquivos independente, não possibilitando que um usuário tenha acesso a um arquivo que não esteja sob os auspícios do gerente de arquivos do seu elemento processador. Na segunda maneira, isso já é possível, contudo, o usuário terá que explicitar em que o elemento processador se encontra o arquivo desejado. A terceira abordagem é a utilizada em sistemas operacionais distribuído, e consiste em ter-se um gerente de arquivos único e global, visível para todos os elementos processadores. Nessa abordagem o balanceamento no tocante a utilização dos discos é feita pelo próprio sistema operacional.

Os mecanismos de proteção definem para o sistema, entre outras coisas, a forma de identificação do usuário. Em sistemas operacionais de rede o usuário possui uma identificação para cada um dos elementos processadores remotos que ele tem acesso. Nesse caso o usuário deve informar o identificador para se

Page 2: Atividade sd

conectar a um elemento processador remoto, ou então, o próprio sistema operacional pode fazer a conversão do identificador local para o remoto, utilizando-se de tabelas de mapeamento. Já os sistemas operacionais distribuídos associam apenas um identificador a cada usuário, válido para todos os elementos processadores que façam parte do sistema distribuído.

No tocante ao gerenciamento de processos, um sistema operacional distribuído, quando da necessidade de criar um processo, analisa a carga global do sistema e os recursos a serem usados pelo processo, de modo a deixar o sistema balanceado. Essa preocupação não existe em um sistema operacional de rede, o processo é criado no elemento processador que se encontra a entidade que está solicitando a criação ou então em um elemento processador informado explicitamente por essa entidade.

Um aspecto importante, e que deve ser enfatizado, no tocante a diferença entre esses dois tipos de sistemas operacionais, é a sua forma de implementação. Um sistema operacional de rede é implementado de forma a manter os sistemas operacionais locais dos vários elementos processadores que compõem o sistema, funcionando como uma camada de software entre o sistema operacional local e o seu núcleo. Já um sistema operacional distribuído é implementado como uma entidade única e que abrange todos os elementos processadores do sistema, possuindo o seu próprio núcleo distribuído.

Pelo acima exposto, fica claro que, atualmente, o que existe disponível a nível de mercado são produtos conformantes com o conceito de sistemas operacionais de rede, tais como, Netware da Novell, Lan Manager da Microsoft, Lan Server da IBM e SNA a IBM.

Atividade

Elaborar uma resenha apontando os pontos principais do artigo tais como diferenças, vantagens, desvantagens e o que vocês acharem interessante para o debate.