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

description

apostilas de operacionais de nivel uniersitari resumida

Transcript of sistemas operacionais-1

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