TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Os Sistemas Operacionais

Por:   •  29/4/2015  •  Trabalho acadêmico  •  1.044 Palavras (5 Páginas)  •  915 Visualizações

Página 1 de 5

Sistemas monolíticos

Em um sistema monolítico, todos os núcleos se interligam com o núcleo em si em formas aleatórias se relacionando quando for necessário. A grande vantagem seria no rápido processo em seu desempenho monolítico, qualquer componente do núcleo pode acessar os componentes do núcleo, ou seja, a interação direta de cada processo em seu componente torna o sistema mais firme. Entretanto se um componente do sistema perder o controle, o problema se espalhará pelo núcleo criando um colapso entre eles, consequentemente levando a travamentos, reinicialização da máquina.

Pequena alteração na estrutura de dados pode acarretar em impactos inesperados em outros componentes. A arquitetura monolítica foi a primeira forma de organizar os sistemas operacionais; sistemas UNIX antigos e o MS-DOS seguiam esse modelo. Atualmente, apenas sistemas operacionais embarcados são totalmente monolíticos. Um exemplo simples:

[pic 1]

Um sistema operacional monolítico pode caracterizar por não possuir uma estruturação interna no seu núcleo, o núcleo é um conjunto de procedimento compilados em um único arquivo, alguns procedimentos implementa as chamadas ao sistemas operacional e outros são procedimentos utilitários, onde é executado uma tal tarefa.

Sistemas em camadas

Este sistema é divido em camadas, em cada camada tem uma função a ser executado , as camadas internas tem mais vantagem em camadas externas. Exemplo:

[pic 2]

  • A camada mais baixa realiza a interface com o hardware.
  • As camadas intermediarias realizam abstração e gerencia cada vez mais sofisticados.
  • A camada superior define a interface do núcleo para as aplicações.
  • Cada camada pode ser modificada sem ter que alterar todo o kernel.
  • Cada camada depende do outro pra exercer a sua função.
  • Windows e Linux possuem um certo nível de implementação de camadas.

Muitos sistemas implementam uma camada inferior de abstração do hardware para interagir com os dispositivos, e também organizam em camadas alguns sub-sistemas como a gerência de arquivos e o suporte de rede como o modelo OSI. Como exemplos de sistemas fortemente estruturados em camadas podem ser citados o IBM OS/2 e o MULTICS.

Máquina virtual

Maquina virtual é um software que pode ser instalado no computador e ser instalado normalmente, em modo geral, é um software que cria o seu próprio disco rígido dentro da interface do seu computador. São bem uteis pois permitem ao usuário rodar outros sistemas operacionais dentro de uma janela, são ótimos para desenvolver programas em fase de estágio, usando uma parte de memoria RAM. As máquinas virtuais são capazes de “enganar” os programas e sistemas operacionais, pois eles acreditam que estão sendo executados diretamente no hardware físico, e não dentro de uma simulação. Por isso, eles podem ser instalados da mesma forma que seriam dentro do sistema operacional. Mostraremos o procedimento básicos de uma maquina virtual:

[pic 3]

Uma aplicação é executada sobre um programa que implementa uma máquina virtual de processo, onde neste caso a máquina virtual faz uso das funcionalidades providas pelo sistema operacional e pelo próprio processador através de instruções não privilegiadas. Ou seja, a aplicação faz uso apenas da interface provida pelo ambiente virtual. Podendo ser rodado no Windows, Linux, entre outros...

O interesse na virtualização não só tem caminhado para um aperfeiçoamento do suporte ao hardware na virtualização do processador, ou na simplificação do monitor da máquina virtual (VMM), mas têm evoluído sim com suas principais preocupações na segurança, confiabilidade, disponibilidade, adaptabilidade e custo.

Exonúcleos

Em relação no sistema em camada, na camada mais inferior, executando em modo núcleo, há um programa denominado exonúcleo. Sua tarefa é alocar recursos às máquinas virtuais e então verificar as tentativas de usá-los para assegurar-se de que nenhuma máquina tente usar recursos de outra. A vantagem do esquema exonúcleo é que o mesmo “poupa” uma camada de mapeamento. Nos outros projetos as VMs ( virtual memory system) pensam” que possuem a infraestrutura.

[pic 4]

Um exonúcleo é um tipo de núcleo que não abstrai hardware in modelos teóricos. Ao invés disso ele aloca recursos físicos de hardware, como o tempo de um processador, páginas de memória, e blocos de disco, para diferentes programas. Um programa rodando em um exonúcleo pode ligar para uma biblioteca do sistema operativo que usa o exonúcleo para simular as abstrações de um sistema operativo conhecido, ou ele pode desenvolver abstrações específicas para aquele aplicativo para ume performance superior, é um paradigma de implementação em que existe em um núcleo simples que faz gerência de recursos do sistema e um conjunto de bibliotecas que implementam a abstração de um sistema operacional. O aplicativo pode utilizar diretamente os recursos dos dispositivos do sistema ou pode utilizar bibliotecas de software e são capazes de compartilhar o mesmo hardware simultaneamente, similarmente a uma máquina virtual. A diferença é que em um sistema exonúcleo o hardware é alocado previamente, não podendo ocorrer o acesso indevido de outro sistema.

...

Baixar como (para membros premium)  txt (7 Kb)   pdf (192.9 Kb)   docx (138.6 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com