A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais I

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais I"— Transcrição da apresentação:

1 Sistemas Operacionais I
Estruturas de Sistemas Computacionais

2 Ciência da Computação - SO
Estruturas de Sistemas Computacionais Operações de Computadores Estrutura de E/S Estrutura de Armazenamento Estrutura Hierárquica Proteção de Hardware Arquitetura Geral do Sistema Ciência da Computação - SO

3 Ciência da Computação - SO
Arquitetura de um Computador Ciência da Computação - SO

4 Ciência da Computação - SO
Operações de um Computador Dispositivos de E/S e CPU podem executar concorrentemente. Cada controlador de dispositivo é encarregado por um tipo particular de dispositivo. Cada controlador de dispositivo tem um buffer local. CPU move dados de/para memória principal para/de buffers locais. E/S é de um dispositivo para o buffer local da controladora. Controladora de Dispositivo informa a CPU que terminou a operação através da geração de uma interrupção. Ciência da Computação - SO

5 Ciência da Computação - SO
Funções Comuns das Interrupções Transferir o controle para a rotina de serviço da interrupção, geralmente através do vetor de interrupção, o qual contém os endereços de todas as rotinas de serviço. Arquitetura da interrupção deve salvar o endereço da instrução interrompida. A geração de novas interrupções é desabilitada enquanto uma outra interrupção está sendo processada para evitar a perda de uma interrupção. Uma trap é uma interrupção gerada por software causada por uma requisição do usuário ou por um erro. Um sistema operacional é acionado por interrupções. Ciência da Computação - SO

6 Ciência da Computação - SO
Tratamento de Interrupção O sistema operacional preserva o estado da CPU armazenando os valores armazenados nos registradores e o do contador de programas (PC). Determinar quais tipos de interrupção ocorreram: Baseadas em Polling (sondagem) Através do vetor de interrupções Segmentos de código separados determinam qual ação deve ser realizada para cada tipo de interrupção. Ciência da Computação - SO

7 Ciência da Computação - SO
Linha do Tempo de uma Interrupção para um Único Processo Gerando Saídas Ciência da Computação - SO

8 Ciência da Computação - SO
Estrutura de Entrada e Saída Após o início de uma E/S, o controle retorna ao programa do usuário somente quando a requisição de E/S terminar. Instruções de espera liberam a CPU até a próxima interrupção Laço de espera (contenção para acesso a memória). No máximo uma requisição de E/S está pendente de cada vez, não ocorre processamento de E/S simultâneo. Após o início de uma E/S, o controle retorna ao programa do usuário sem aguardar o tratamento da requisição de E/S. Chamada de Sistemas (System call) – requisição ao sistema operacional para permitir ao usuário aguardar o término da E/S. Tabela de Estados de Dispositivos contém uma entrada para cada dispositivo de E/S indicando seu tipo, endereço e estado. Sistema operacional acessa a tabela de dispositivos de E/S para determinar a situação do dispositivo e modificar a entrada na tabela para incluir a interrupção. Ciência da Computação - SO

9 Ciência da Computação - SO
Dois métodos de Entrada e Saída Ciência da Computação - SO

10 Ciência da Computação - SO
Tabela de Estados de Dispositivos Ciência da Computação - SO

11 Ciência da Computação - SO
Estrutura de Acesso Direto à Memória (DMA) Usado para dispositivos de E/S de alta velocidade capazes de transmitir informação a uma taxa próxima da memória. Controladores de dispositivo transferem blocos de dados de um buffer de armazenamento diretamente para a memória principal, sem intervenção da CPU. Somente uma interrupção é gerada por bloco, ao invés de uma interrupção por byte. Ciência da Computação - SO

12 Ciência da Computação - SO
Estruturas de Armazenamento Memória Principal – única grande área de armazenamento que a CPU pode acessar diretamente. Armazenamento Secundário – extensão da memória principal que fornece grande capacidade de armazenamento persistente (não volátil). Discos Magnéticos – prato de metal rígido ou vidro coberto com material magnético para armazenamento de dados Superfície do disco é dividida logicamente em trilhas, que são subdivididas em setores. A controladora de disco determina a interação lógica entre o dispositivo e o computador. Ciência da Computação - SO

13 Ciência da Computação - SO
Mecanismo de Movimento da Cabeça do Disco Ciência da Computação - SO

14 Ciência da Computação - SO
Hierarquia de Armazenamento Sistemas de Armazenamento são organizados em hierarquia. Velocidade Custo Volatilidade Caching – copiar informação em um sistema mais rápido de armazenamento; memória principal pode ser vista como um último cache para o armazenamento secundário. Ciência da Computação - SO

15 Ciência da Computação - SO
Hierarquia de Dispositivos de Armazenamento Ciência da Computação - SO

16 Ciência da Computação - SO
Proteção de Hardware Operação em dois modos Proteção de E/S Proteção de Memória Proteção de CPU Ciência da Computação - SO

17 Ciência da Computação - SO
Operação em Dois Modos O compartilhamento de recursos necessita a garantia do sistema operacional de que programas incorretos não causem a execução incorreta de outros programas. Prover suporte de hardware para diferenciar entre dois modos de operação. Modo Usuário (User mode) – execução é feita de acordo com o usuário. Modo Supervisor, Monitor ou do Sistema (Monitor mode, supervisor mode or system mode) – execução é feita de acordo com o sistema operacional. Ciência da Computação - SO

18 Ciência da Computação - SO
Operação em Dois Modos (Cont.) Um bit de modo é adicionado ao hardware do computador para indicar o modo atual: monitor (0) ou usuário (1). Quando uma interrupção ou falta ocorre, o hardware comuta para o modo monitor. Instruções privilegiadas podem ser executadas somente em modo monitor. Ciência da Computação - SO

19 Ciência da Computação - SO
Proteção de Entrada e Saída Todas as instruções de E/S são instruções privilegiadas. É necessário garantir que um programa usuário nunca deve obter o controle do computador no modo monitor. (Por exemplo, um programa do usuário que, como parte da sua execução, armazena um novo endereço no vetor de interrupções). Ciência da Computação - SO

20 Ciência da Computação - SO
Proteção de Memória É necessário garantir a proteção de memória pelo menos para o vetor de interrupções e para as rotinas de serviço das interrupções. Para garantir proteção de memória, adicionam-se dois registradores que determinam o escopo dos endereços válidos que um programa pode acessar: Registrador Base – armazena o menor endereço válido de memória física. Registrador Limit – contém o tamanho da área endereçável. Memória fora do escopo definido é protegida. Ciência da Computação - SO

21 Ciência da Computação - SO
Registradores Base e Limite definem um Espaço de Enderaçamento Lógico Ciência da Computação - SO

22 Ciência da Computação - SO
Proteção de Hardware Quando executando em modo monitor, o sistema operacional tem acesso irrestrito tanto a memória do monitor como do(s) usuário(s). As instruções de carga dos endereços para os registradores base e limit são instruções privilegiadas. Ciência da Computação - SO

23 Ciência da Computação - SO
Proteção de CPU Timer – interrompe o computador após um período específico de tempo para garantir o controle ao sistema operacional. Timer é decrementado a cada pulso do clock (clock tick). Quanto o timer alcança o valor 0, ocorre uma interrupção. O timer é comumente usado para implementar compartilhamento de tempo (time sharing). O timer é usado também para computar a hora corrente. Carregar valores para o timer é uma instrução privilegiada. Ciência da Computação - SO

24 Ciência da Computação - SO
Arquitetura Geral do Sistema Uma vez que as instruções de E/S são privilegiadas, como o programa do usuário realiza E/S? Chamada de Sistema (System call) – método usado por um processo para requerer uma ação do sistema operacional. Normalmente ocorre através de uma comutação para um local específico no vetor de interrupções (trap). O controle passa para uma rotina de serviço no SO através do vetor de interrupções, e o bit de modo é alterado para modo monitor. O monitor verifica se os parâmetros estão corretos e são válidos, executa a requisição, e retorna o controle para a próxima instrução após a chamada de sistema. Ciência da Computação - SO

25 Ciência da Computação - SO
Uso de Chamada de Sistema para realizar E/S Ciência da Computação - SO


Carregar ppt "Sistemas Operacionais I"

Apresentações semelhantes


Anúncios Google