Sie sind auf Seite 1von 19

Sistemas Operacionais

Introdução
Prof. César Amaral
cesar.amaral@uninove.br
2010

Eventos e Interrupções
 Eventos são sinalizados por interrupções de
hardware ou de software.
 Interrupção de Hardware
 Sinal enviado à UCP por meio do barramento.
 Interrupção de Software (trap)
 Chamada de Sistema (System Call) ou Chamada
ao Monitor (Monitor Call).

1
Tratamento de Interrupções
 Ao receber uma interrupção a CPU/UCP:
 Interrompe a tarefa atual, armazenando seu endereço em
uma pilha;
 Transfere execução para um endereço fixo na memória;
 Este endereço contém o endereço inicial da rotina de
atendimento da interrupção, que é então executada;
 Retoma à tarefa interrompida.
 Quantidade de interrupções limitada e pré-definida.
 Vetor de Interrupções.

Estrutura de Armazenamento
 RAM (Random Access Memory).
 Única área de grande armazenamento com acesso
direto pela CPU/UCP.
 Os programas necessitam estar na RAM para
serem executados.
 Geralmente implementada em DRAM (
Dynamic RAM) que forma um conjunto de
words individualmente endereçadas.
 Ciclo típico de instruções com arquitetura Von
Neumamm.

2
Estrutura de Armazenamento
 Interação consiste em mover words entre a RAM e
os registradores da UCP.
 Ciclo típico de execução de instruções com
arquitetura Von Neumann.
 Instruções são copiadas da memória para o registrador
de instruções.
 Instrução é decodificada e processada, com eventual

manipulação de words entre RAM e registradores de


UCP/CPU.

Estrutura de Armazenamento
 Limitações da RAM:
 Relativamente pequena.
 Volátil.
 Armazenamento secundário:
 Relativamente Grande.
 Permanente.
 Armazenamento secundário comum: Disco Rígido
Magnético.
 Origem e destino dos dados para armazenamento.

3
Hierarquia dos dispositivos de
armazenamento

Estrutura de Armazenamento

 Quatro níveis superiores da hierarquia são


feitos com semicondutores
 Os níveis acima do disco eletrônico são
voláteis. O próprio disco eletrônico pode ou
não ser volátil.

4
Estrutura de E/S
 Grande parte do código do Sistema Operacional é voltada para
o Gerenciamento de Entrada/Saída.

 UCP/CPU e controladores de dispositivos ligados por


barramento comum.

 Quantidade de dispositivos por controlador.


 IDE.
 SCSI.

 Controladores de dispositivos movem dados de/para


dispositivos, armazenando alguns em:
 Buffer local.
 Registradores específicos.

Estrutura de E/S
 Controladores movem dados entre
periféricos e buffer local.
 Sistemas Operacionais têm um driver de
dispositivo para cada controlador de
dispositivo.

5
Operação de E/S
 Drivers de dispositivo carrega registradores para o controlador
de dispositivo.
 Controlador usa dados nos registradores para determinar
ação.
 Controlador transfere dados do dispositivo para buffer local.
 Ao concluir, controlador avisa ao driver via interrupção.
 Driver avisa sistema operacional.
 DMA resolve problemas de overhead na transferência de
grandes quantidades de dados de/para dispositivos.

Modo Dual
 Distinguir execução de código do Sistema
Operacional e código do usuário
 Modo Usuário e Modo do Sistema (Monitor,
Supervisor, Privilegiado ou Kernel)
 Usa-se um bit (bit de modo) para indicar o
estado: monitor(0) ou usuário (1)

6
Modo Dual
 No boot, hardware opera em Modo Monitor.
 Ao carregar, o sistema operacional, cria processos em modo
usuário.
 Modo dual protege o sistema operacional contra usuários mal
intencionados e um usuário do outro.
 Instruções que podem causar danos são instruções
privilegiadas, executadas apenas em Modo Monitor
 Intel 8088 não possuia suporte para o modo dual. MS-DOS
escrito para ele não o implementava, portanto.

Temporizador
 É preciso garantir que o Sistema Operacional tenha
controle sobre a UCP/CPU.
 Sem um temporizador (ou timer), um programa de
usuário em loop infinito pode impedir que o sistema
operacional retome o controle do computador
 Temporizadores enviam interrupções após períodos
de tempo especificados:
 Fixos ou variáveis.

7
Tipos de Sistemas Operacionais
 Tipos
 Sistemas Mainframe
 Sistemas Desktop
 Sistemas Multiprocessados
 Sistemas Distribuídos
 Sistemas em Clusters
 Sistemas de Tempo Real
 Sistemas Portáteis
 Sistemas de Cartões Inteligentes
 Migração de recursos
 Ambientes de computação
 Ambientes de trabalho

Objetivos
 Conhecer os tipos de Sistemas Operacionais
atualmente em uso.
 Diferenciar os diversos tipos de Sistemas
Operacionais e os ambientes de trabalho
para possibilitar uma configuração adequada
à necessidade dos usuários e organizações.

8
Monoprogramável / Monotarefa

 Características
 Apenas uma tarefa é executada.
 1 Operador (1 usuário) tem acesso à
máquina.
 Sistemas dedicados para tarefa fim.
 Vantagens
 Todos os recursos ficam a disposição da
tarefa.
 Desvantagens
 Recursos passam muito tempo ociosos.
 Sem recursos de segurança.

Mainframe
 Sistemas de Processamento de Lotes (Batch).
 Lote de várias tarefas é organizado no dispositivo de
entrada.
 Tarefas são lidas e processadas seqüencialmente na
ordem.
 Reduz o tempo de configuração agrupando tarefas
semelhantes.
 Maior eficiência para uma única tarefa.
 CPU ociosa.
 Velocidade dos dispositivos mecânicos de I/O são
menores que os dispositivos eletrônicos.

9
Mainframe
 Sistemas Batch Multiprogramados
 Várias tarefas são mantidas na memória e o processador
é “multiplexado” entre elas.

 Uso contínuo do processador.


 Atrasos na execução individual
 Requer sistema de prioridade:
 Escalonamento de tarefas

Multiprogramável/Multitarefa
 Características
 Série de trabalhos executados simultaneamente.
 Compartilhando os recursos.
 Vantagens
 Aumento de Produtividade.
 Redução de Custos.
 Requisitos do Sistema
 Definição das Rotinas de E/S.
 Gerenciamento de Memória.
 Agendar CPU para as tarefas prontas para
execução.
 Alocar dispositivos.

10
Sistemas de Tempo Compartilhado
 Computação Interativa
 Interação de vários usuários com o sistema.
 Reserva de tempo (Time-Slice) para cada usuário.
 Uma tarefa (um usuário) alterna na memória do sistema.
 Necessita sistema on-line para acesso dos usuários.
 Quantidade de trabalhos limitado por configuração.
 Maior produtividade.
 Menor custo de utilização do sistema.

Sistemas Desktop
 Computadores pessoais
 computador dedicado a um único usuário.

 Dispositivos de E/S
 teclados, mouses, monitores, impressoras.
 Conveniência e responsabilidade do usuário.

 Tecnologia de SO “maiores”
 Podem adotar tecnologia desenvolvida para SO maiores.
 Podem executar vários tipos diferentes de sistemas operacionais
 (Windows, MacOS, UNIX, Linux).
 Os usuários normalmente fazem um único uso do computador.
não precisam de utilização avançada de CPU dos recursos de
proteção.

11
Sistemas Paralelos
 Sistemas Multiprocessados
 Sistemas com mais de uma CPU em perfeita comunicação.
 Tempo de Processamento total é maior que a soma das partes
(Sistema de Controle de Processamento).
 Fator Chave
 Forma de Comunicação.
 Grau de Compartilhamento de Memória e Dispositivos de E/S.

Sistemas Paralelos
 Sistemas Fortemente Acoplados (Tightly Coupled)
 os processadores compartilham barramento, memória e clock.
 comunicação ocorre através da memória compartilhada.
 Concorrência
 Processadores acessando o mesmo espaço de memória.
 Vantagens do Sistema Multiprocessado:
 Maior produção (Throughput).
 Mais processadores executam mais tarefas em menos tempo.
 Cuidado! Aumento da velocidade de n processadores < n !
 Economia.
 Custo de processador inferior ao custo do computador.
 Maior confiabilidade (Sistema Tolerante a Falha).
 Degradação controlada.

12
Multiprocessamento
Assimétrico
 Sistemas Fortemente Acoplados Assimétricos
 Uma tarefa específica é atribuída a cada
processador.
 Mais comum em sistemas extremamente Mestre
grandes.
 Mestre / Escravo
 Só o Processador Mestre executa o SO
 Um processador mestre escalona e aloca
trabalho para os processadores escravos.
 Ineficiente
 Número excessivo de Interrupções do Escravo
processador escravo
 Se o Mestre falhar, sistema inoperante

Multiprocessamento Simétricos (SMP)


 Sistemas Fortemente Acoplados Simétricos
 Cada processador executa uma cópia idêntica do SO.
 Muitos processos podem ser executados ao mesmo tempo sem
queda do desempenho.
 A maioria dos sistemas operacionais modernos suporta SMP.
 Características
 Sem Hierarquia entre Processadores.
 Recursos compartilhados.
 SO responsável pelo gerenciamento.
 Mais Poderoso que Assimétricos
 Melhor Distribuição da carga de Trabalho e Operações de E/S.
 Se um processador falhar, outro processador assume a tarefa.

13
Sistemas Distribuídos
 Sistemas Fracamente Acoplados (Loosely Coupled)
 Distribuem a computação entre vários processadores físicos.
 Cada processador possui sua própria memória local.
 Processadores se comunicam através de linhas de
comunicação.
 barramento de alta velocidade ou linhas telefônicas
 Requerem infra-estrutura de rede
 Redes locais (LANs) ou redes de longa distância (WANs).
 Podem ser sistemas cliente-servidor ou peer-to-peer.
 Padrões
 DCE – Distributed Computing Environment.
 CORBA – Common Object Request Broker Architecture.
 OLE – Object Linking and Embedding.

Sistemas Distribuídos
 Sistemas Operacionais de Rede
 Fornece recursos através da rede.
 Troca de mensagens entre computadores.
 Atua independente dos outros computadores da rede.
 Sistemas Operacionais Distribuídos
 Menos autônomo
 SO interagem o suficiente para dar a impressão de um único SO.
 Vantagens dos Sistemas Distribuídos
 Compartilhamento de recursos.
 Computação mais rápida.
 Compartilhamento de carga.
 Segurança.
 Capacidade de Redundância – Sistema de Tolerância a Falhas.

14
Sistemas em Cluster
 Sistema de Compartilhamento de Armazenamento
 Permite que dois ou mais sistemas compartilhem armazenamento
 Computadores de rede que funcionam como Sistemas Paralelos.
 Arquitetura Intermediária entre Computação
Distribuída e Multiprocessamento.
 Fornecem alta confiabilidade
 Tolerância à falhas.
 Clustering assimétrico
 um servidor executa a(s) aplicação(ções)
enquanto outros ficam em espera.
 Clustering simétrico
 todos os hosts estão executando a(s) aplicação(ções).

Sistemas em Tempo Real


 Definidos pelos Requisitos de Tempo do Sistema
 Restrições de bem definidas e Tempo de Resposta rígido.
 Aloca recursos para o processo de maior prioridade – sempre.
 Monitoramento de Sistemas Críticos.
 Dispositivo de controle em uma aplicação dedicada
 experiências científicas de controle.
 sistemas de geração de imagens médicas.
 sistemas de controle industrial.
 alguns sistemas de vídeo ...
 Máxima confiabilidade com mínimo de intervenção humana
 Nem sempre é possível utilizar time-slice.

15
Sistemas de Tempo Real
 Tempo Real Rígido (ou Crítico)
 Limites de tempo obedecidos de maneira rígida.
 Armazenamento secundário limitado ou ausente.
 Dados armazenados na memória de curta duração ou ROM.
 Conflitos com Sistemas de Tempo Compartilhado.
 Não suportados pelos SOs de finalidade geral.
 Tarefas críticas que não permitem atraso.
 Atrasos tem dano significativo.
 Tempo Real Flexível (ou Não Crítico)
 Integrável com sistemas de tempo compartilhado.
 Utilidade limitada no controle industrial da robótica.
 Aplicações que exigem tempos de resposta curtos e não rígidos.
 multimídia, realidade virtual, ...

Sistemas Portáveis
 Computadores de Mão e Sistemas Embarcados
 Personal Digital Assistants (PDAs).
 Telefones celulares.
 Smartphones.
 Desvantagens:
 Limitação de Memória e Consumo de
Energia.
 Processadores lentos.
 Telas pequenas.
 Exemplos:
 Windows CE.
 Symbian.
 Android.
 iPhone.

16
Sistemas de cartões
inteligentes
 Dispositivos que contém um chip de CPU
 Realizar poucas ou um única função.
 Pagamentos eletrônicos.
 Normalmente são sistemas proprietários.
 Problemas
 Restrições severas de consumo de energia e
memória.
 Cartões Inteligentes Orientados à Java
 ROM possui um interpretador para a
Máquina Virtual Java (JVM).
 Alguns podem tratar múltiplas Applets.
 Multiprogramação e conseqüente escalonamento.
 Gerenciamento de Recursos e Proteção.

Migração de Recursos e Conceitos


de Sistemas Operacionais

17
Ambiente de Computação
 Computação tradicional
 PCs, servidores, acesso remoto limitado.
 Computação baseada na Web
 Cliente-servidor e Web Services
 Acesso remoto conveniente.
 Servidores sem local.
 Computação incorporada
 A maioria dos computadores (controladores de motores de
automóveis, microondas).
 Recursos de sistema operacional bastante limitados.
 Pouca ou nenhuma interface, acesso remoto.

Ambiente de Trabalho
 Descentralizado
 Cada usuário cuida de seu sistema.
 Equipamento, aplicativos e arquivos.
 Duplicação de Dados, Inconsistências e Redundâncias.
 Maior custo de equipamento, manutenção e operação.
 Centralizado
 Um computador acomoda os recursos da Organização.
 Terminais remotos (“Burros”).
 Não necessariamente uma rede.
 Economia nos custos de equipamento e manutenção.
 Facilidade de gerenciamento, suporte e comunicação.
 Ponto de Falha Único: Se o computador parar, tudo para.

18
Referência Bibliográfica
 Materiais de apoio dos professores:

 Cid Rodrigues de Andrade.

 Gregorio Perez.

Referência Bibliográfica
 Sistemas Operacionais
Deitel, Deitel e Choffnes;
Ed. Pearson 3a Edição
www.prenhall.com/deitel_br

 Sistemas Operacionais, Conceitos e Aplicações


A. Silberschatz, P. Galvin, G. Gagne;
Ed. Campus Tradução da 6a. Edição
www.wiley.com/college/silberschatz6e/0471417432/slides/slides.html

 Sistemas Operacionais Modernos


Andrew Tanenbaum;
Ed. Pearson 2a Edição
www.prenhall.com/tanenbaum_br

19

Das könnte Ihnen auch gefallen