sistemas operacionais-1

19
1 Sistemas Operacionais Introdução Prof. César Amaral [email protected] 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).

Upload: natanaelnb

Post on 18-Jun-2015

622 views

Category:

Documents


0 download

DESCRIPTION

apostilas de operacionais de nivel uniersitari resumida

TRANSCRIPT

Page 1: sistemas operacionais-1

1

Sistemas OperacionaisIntrodução

Prof. César [email protected]

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).

Page 2: sistemas operacionais-1

2

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.

Page 3: sistemas operacionais-1

3

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.

Page 4: sistemas operacionais-1

4

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.

Page 5: sistemas operacionais-1

5

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/paradispositivos, 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.

Page 6: sistemas operacionais-1

6

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)

Page 7: sistemas operacionais-1

7

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.

Page 8: sistemas operacionais-1

8

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.

Page 9: sistemas operacionais-1

9

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.

Page 10: sistemas operacionais-1

10

Mainframe

� Uso contínuo do processador.� Atrasos na execução individual� Requer sistema de prioridade:

� Escalonamento de tarefas

� Sistemas Batch Multiprogramados

� Várias tarefas são mantidas na memória e o processador é “multiplexado” entre elas.

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.

Page 11: sistemas operacionais-1

11

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 deproteção.

Page 12: sistemas operacionais-1

12

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.

Page 13: sistemas operacionais-1

13

Mestre

Escravo

MultiprocessamentoAssimétrico

� Sistemas Fortemente Acoplados Assimétricos� Uma tarefa específica é atribuída a cada

processador.� Mais comum em sistemas extremamente

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 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.

Page 14: sistemas operacionais-1

14

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.

Page 15: sistemas operacionais-1

15

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.

Page 16: sistemas operacionais-1

16

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.

Page 17: sistemas operacionais-1

17

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 Conceitosde Sistemas Operacionais

Page 18: sistemas operacionais-1

18

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.

Page 19: sistemas operacionais-1

19

Referência Bibliográfica

� Materiais de apoio dos professores:

� Cid Rodrigues de Andrade.

� Gregorio Perez.

Referência Bibliográfica

� Sistemas OperacionaisDeitel, Deitel e Choffnes;Ed. Pearson 3a Ediçãowww.prenhall.com/deitel_br

� Sistemas Operacionais, Conceitos e AplicaçõesA. Silberschatz, P. Galvin, G. Gagne;Ed. Campus Tradução da 6a. Ediçãowww.wiley.com/college/silberschatz6e/0471417432/slides/slides.html

� Sistemas Operacionais ModernosAndrew Tanenbaum;Ed. Pearson 2a Ediçãowww.prenhall.com/tanenbaum_br