Apresentação do PowerPoint · processadores virtuais que estão em cima de um único SO que está...
Transcript of Apresentação do PowerPoint · processadores virtuais que estão em cima de um único SO que está...
• Principais tipos de estruturas:• Monolíticos;
• Em camadas;
• Máquinas Virtuais;
• Arquitetura Micro-kernel;
• Cliente-Servidor;
2
Estrutura do Sistema OperacionalArquiteturas do Kernel
Estrutura do Sistema OperacionalArquiteturas do Kernel
• Arquitetura Monolítica
Hardware
System CallModo kernel
Modo Usuário
Aplicação Aplicação
• A arquitetura monolítica pode ser comparada com uma aplicação formada por vários módulos que são compilados separadamente e depois linkados, formando um grande programa executável, onde os módulos podem interagir livremente.
• Os primeiros sistemas operacionais foram desenvolvidos com base neste modelo, o que tornava seu desenvolvimento, e principalmente, sua manutenção bastante difíceis.
• Devido a sua simplicidade e bom desempenho, a estrutura monolítica foi adotada no projeto do MS-DOS e nos primeiros sistemas UNIX.
Estrutura do Sistema OperacionalArquiteturas do Kernel
• Monolítico• Organizado de forma única, sendo instalado na máquina
como um único bloco
• Os SO que mais são instalados nos dias atuais utilizam dessa estrutura
• Os serviços (chamadas) requisitados ao sistema são realizados por meio da colocação de parâmetros em registradores ou pilhas de serviços seguida da execução de uma instrução chamada TRAP;
Estrutura do Sistema OperacionalArquiteturas do Kernel
• Todos os módulos do sistema são compilados individualmente e depois ligados uns aos outros em um único arquivo-objeto;
• O Sistema Operacional é um conjunto de processos que podem interagir entre si a qualquer momento sempre que necessário;
• Cada processo possui uma interface bem definida com relação aos parâmetros e resultados para facilitar a comunicação com os outros processos;
• Simples;
• Primeiros sistemas UNIX e MS-DOS;
6
Estrutura do Sistema OperacionalArquiteturas do Kernel
Modo kernel
aplicação aplicação
Modo usuário
System call
Hardware
7
Estrutura do Sistema OperacionalArquiteturas do Kernel
8
• Não há estruturação visível;
• SO é escrito como uma coleção de processos cadaprocesso podendo fazer chamadas a qualquer outro;
• Os serviços (system calls) são requisitados através dacolocação dos parâmetros em lugares definidos (pilhase registradores) e da execução de uma chamada desistema especial (TRAP) ao kernel ;
Estrutura do Sistema OperacionalArquiteturas do Kernel
9
System Calls
Hardware
aplicaçãoaplicação
Modo usuário
Modo Kernel
Estrutura do Sistema OperacionalArquiteturas do Kernel
Em Camadas
• O SO é implementado em camadas que só se comunicam com suas camadas vizinhas, ou seja, cada camada só se comunica com sua camada inferior e sua camada superior
• Caso a camada do topo necessite comunicar-se com a camada mais inferior, é necessário que as instruções sejam passadas de camada a camada até chegarem na camada desejada
11
Sistemas em camadas• Camadas sobrepostas;
• Cada módulo oferece um conjunto de funçõesque podem ser utilizadas por outros módulos.
Estrutura do Sistema OperacionalArquiteturas do Kernel
• Arquitetura de Camadas
Kernel
Executivo
Supervisor
Usuário
Estrutura do Sistema OperacionalArquiteturas do Kernel
• O sistema é dividido em níveis sobrepostos.
• Cada camada oferece um conjunto de funções que podem ser utilizadas apenas pelas camada superiores.
• Neste tipo de implementação, as camadas mais internas são mais privilegiadas que as mais externas.
Estrutura do Sistema OperacionalArquiteturas do Kernel
• Vantagem • Isolamento das funções do SO, facilitando sua manutenção e
depuração
• Criação de uma hierarquia de níveis de modos de acesso, protegendo as camadas mais internas.
• Desvantagem • Desempenho.
• Cada nova camada implica em uma mudança no modo de acesso.
• Atualmente, a maioria dos sistema comerciais utiliza o modelo de duas camadas, onde existem os modos de acesso usuário (não-privilegiado) e kernel (privilegiado).
• A maioria das versões do UNIX e o Windows da Microsoft está baseada neste modelo.
Máquinas Virtuais
• É a utilização de um único hardware com um único SO, porém esse SO cria vários SO trabalhando independentes em várias máquinas virtuais
• Vários SO virtuais estão funcionando com vários processadores virtuais que estão em cima de um único SO que está funcionando sobre um único processador físico
Modelo Cliente - Servidor
• Um único núcleo do SO está tratando diretamente com o hardware recebendo pedidos de sistemas
• O restante está dividido em servidores (de processos, de arquivos, de gerência de memória, de E/S, etc), sendo que cada um desses servidores pode ser distribuído em máquinas diferentes.