• Nenhum resultado encontrado

Sistemas Operacionais

N/A
N/A
Protected

Academic year: 2021

Share "Sistemas Operacionais"

Copied!
14
0
0

Texto

(1)

Sistemas Operacionais

Sistemas Operacionais

Sistemas de Entrada/Saída

Princípios de Hardware

Sistema de Entrada/Saída

Sistema de Entrada/Saída

Ø

Visão Geral

Ø

Princípios de Hardware

ü Dispositivos de E/S

ü Estrutura Típica do Barramento de um PC

ü Controladores de Dispositivos

ü Interrupções

(2)

3 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Visão Geral

Visão Geral

Ø

Dispositivos podem variar de diversas maneiras:

ü Transf. por caractere (terminal) ou por bloco deles (disco)

ü O acesso aos dados armazenados pode ser seqüencial (modem) ou aleatório (CD-ROM)

ü Os dados podem ser transferidos de forma síncrona (fita) ou assíncrona (teclado)

ü Os dispositivos podem ser restritos a um único processo (fi-ta) ou compartilhados simultaneamente por vários (teclado)

ü O acesso pode ser apenas para leitura (CD-ROM), apenas para escrita (CRT) ou para leitura e escrita (disco)

ü A velocidade de acesso pode variar muito (freqüentemente, estes dispositivos são os mais lentos de um sistema computacional)

Visão Geral

Visão Geral

Ø

Principais objetivos:

ü estabelecer uma interface que seja a mais simples possível para que as aplicações possam controlar as distintas características dos dispositivos de entrada/saída

ü otimizar a entrada/saída para obtenção de um maior paralelismo, tendo em vista que tais dispositivos são em geral componentes críticos para o desempenho

Ø

Enfim,

Controlar todos os dispositivos de entrada/saída (E/S) do computador,

emitindo comandos para os dispositivos,

(3)

5 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Visão Geral

Visão Geral

Ø

Estruturação em camadas de HW e SW, a fim de prover uma

interface simples e confiável para o usuário e suas aplicações.

Ø

Desta forma, as camadas inferiores escondem das superiores os

diversos detalhes (características) de cada periférico e suas

diferenças (velocidade de operação, unidade de transferência,

representação de dados, tipos de operação etc).

Dispositivos Controladores Device Drivers Subsistema de E/S Operações de E/S Processos Software Hardware Independente do dispositivo Dependente do dispositivo

Visão Geral

Visão Geral

Manipuladores de Interrupção

(4)

7 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Dispositivos de E/S

Dispositivos de E/S

Ø

Responsáveis pela comunicação entre o computador e o mundo

externo.

Ø

Muitos tipos de dispositivos são usados em computadores,

como:

ü dispositivos de armazenamento (discos, fitas)

ü dispositivos de transmissão (placas de rede, modems)

ü dispositivos de interface com usuários (tela, teclado, mouse) Ø

A transferência de dados, realizada por intermédio dos

controladores, pode ser através de blocos de informações ou

palavra a palavra.

Princípios de Hardware:

Princípios de Hardware:

Dispositivos de E/S

Dispositivos de E/S

Ø

São classificados em:

ü Dispositivos de blocos:

4armazenam informações em blocos de tamanho fixo (normalmente entre 128 e 4096 bytes)

4cada bloco possui seu próprio endereço

4é possível ler ou escrever cada bloco independentemente (acessando o bloco pelo seu endereço)

4Podem ser:

–Acesso Direto: p. ex., disco magnético

(5)

9 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Dispositivos de E/S

Dispositivos de E/S

ü Dispositivos de caracteres:

4enviam ou recebem uma seqüência de caracteres sem estar estruturada no formato de blocos

4seqüência de caracteres não é endereçável (não são possíveis operações de acesso aos dados)

4Exemplos:

–terminais, impressoras, interfaces de rede e leitoras óticas

ü Existem exceções:

4p. ex., relógios (não são endereçáveis e nem geram ou aceitam filas de caracteres): tudo o que fazem é gerar interrupções em intervalos de tempo regulares

Princípios de Hardware:

Princípios de Hardware:

Dispositivos de E/S

Dispositivos de E/S

Ø

A comunicação de um dispositivo com o sistema computacional

é feita através do envio de sinais (cabo ou ar) num ponto de

conexão chamado de

porta

.

Ø

O meio usado por um ou mais dispositivos para conexão com o

computador é chamado de

barramento

.

Ø

Para cada barramento, é definido um

protocolo

que especifica

um conjunto de mensagens que podem ser enviadas pelos fios.

(6)

11 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

barramento SCSI

Estrutura Típica

Estrutura Típica

do

do

Barramento

Barramento

de um PC

de um PC

Barramento PCI Controlador de disco IDE disco disco disco disco Controlador SCSI disco disco disco disco Interface do

barramento de expansão teclado

barramento de expansão

porta paralela porta serial Controlador de terminal gráfico Controlador de memória monitor processador memória cache memória

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

Ø

Unidades de E/S consistem tipicamente de

ü Componentes mecânicos (o dispositivo propriamente dito)

ü Componentes eletrônicos (o controlador)

Ø

Tal diferença deve ser ressaltada, uma vez que o SO vê o

controlador e não o dispositivo

Ø

Normalmente, mini e microcomputadores usam um barramento

único para comunicação entre CPU e os controladores (através de

device drivers)

Ø

Mainframes freqüentemente usam um modelo diferente, no qual

múltiplos barramentos e computadores especializados de E/S

(canais de E/S) aliviam parte da carga da CPU

(7)

13 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

Ø

Como o processador envia comandos e dados a um controlador

para que seja feita uma transf. de dados?

ü O controlador possui memória e registradores próprios para armazenar dados e sinais de controle, de forma a executar instruções enviadas pelo device driver

ü O SO realiza E/S, escrevendo comandos e seus parâmetros nestes registradores dos controladores.

4As instruções de E/S especiais podem ser usadas para especificar a transferência de um byte ou palavra para uma porta de E/S, que tem um determinado endereço

4A instrução de E/S faz com que o dispositivo apropriado seja selecionado de acordo com o sinal transmitido no barramento e que os bits sejam então transferidos para um registrador ou a partir de um registrador do disp.

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

4Uma alternativa à operação de E/S, é que o controlador forneça suporte à E/S mapeada em memória. Nesse caso, os

registradores do controlador correspondem à determinados endereços no espaço de endereçamento do processador. As operações de E/S são, então, executas usando-se instruções normais de transferência de dados, que correspondem a ler ou escrever valores nos registradores do dispositivo.

4Alguns sistemas usam ambas as técnicas, como é o caso dos PCs: um controlador de terminal gráfico tem portas de E/S para operações básicas, mas uma região grande de memória é usada para mapeamento do conteúdo de telas.

(8)

15 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

Ø

Um exemplo: Controlador de Terminal Gráfico

ü trabalha como um dispositivo serial de bits e em baixo nível, ou seja, lê da memória o byte contendo o caractere a ser exibido e gera os sinais usados na modulação do feixe do CRT para causar a escrita na tela

ü o controlador também gera os sinais para o feixe CRT fazer o retraço horizontal após ele ter terminado de esquadrinhar a linha, bem como, sinais para fazer o retraço vertical após a tela toda ter sido esquadrinhada;

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

(9)

17 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

Ø

O problema da Espera em Ciclo (CPU x Controlador):

ü Controlador usa bit ocupado no registrador de status

ü CPU usa bit processar no registrador de controle

ü Suponha que a CPU escreva dados em uma porta, comunicando-se com o controlador, da comunicando-seguinte forma:

4CPU lê repetidamente o bit ocupado

4CPU liga o bit escrever no reg. de controle e armazena saída no reg. de saída de dados

4CPU liga bit processar

4Quando controlador nota bit processar ligado, ele liga bit ocupado

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

4Controlador lê registrador de controle e realiza a operação de escrita no dispositivo

4Controlador desliga bit processar, desliga o bit erro no registrador de status (operação com sucesso) e desliga bit ocupado(operação terminada).

ü Problema: No passo 1, CPU faz espera em ciclo

4Se tempos da CPU e do controlador forem diferentes... 4...CPU deve ser alocada à realização de outras tarefas

ü Problema: p.ex., dados chegando a uma porta serial, teclado etc 4Solução: exec instr/testa/exec instr/testa...(ineficiente) 4Então, como avisar à CPU que o controlador está ocioso?

(10)

19 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Controladores de Dispositivos

Controladores de Dispositivos

ü Quando um comando é aceito, a CPU é liberada pelo SO para outra tarefa.

4Não é necessário que a CPU fique testando repetidamente se o dispositivo já está pronto, o que seria muito ineficiente. Isto é possível, através do mecanismo de interrupções.

ü Quando o comando termina de ser executado, o controlador causa uma interrupção, fazendo o SO tomar controle da CPU e testar o resultado da operação.

ü A CPU obtém o resultado lendo um ou mais bytes nos registradores de saída de dados do controlador

Princípios de Hardware:

Princípios de Hardware:

Interrupções

Interrupções

Ø As interrupções são muito usadas em SOs modernos para o tratamento de eventos assíncronos (p. ex., um controlador ficar pronto para operações de E/S, falhas de hardware ou chamadas a rotinas do sistema), desviando o controle para rot. do núcleo.

Ø

Funcionamento:

ü O hardware da CPU tem um fio chamado de linha de requisição de interrupções, que é testado pela CPU depois da execução de cada instrução

ü Quando a CPU detecta que um controlador enviou um sinal na linha de requisição de interrupções (provocou uma interrupção), ela armazena alguns poucos valores referentes ao seu estado na pilha do processo (PC, SP etc) e desvia para uma rotina de tratamento de interrupções em um determinado endereço de memória.

(11)

21 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Interrupções

Interrupções

ü O tratador de interrupções realiza (trata) o processamento

necessário e executa uma instrução de retorno da interrupção, que faz a CPU retornar ao estado anterior à interrupção.

Ø

Recursos mais complexos:

ü Desabilitação de interrupções (em fases críticas) 4CPU usa 2 linhas de requisição de interrupções:

–uma para requisições que não podem ser desabilitadas (erros de memória irrecuperáveis, p.ex.)

–outra para aquelas que podem ser desabilitadas (os dispositivos fazem suas requisições por estas linhas)

Princípios de Hardware:

Princípios de Hardware:

Interrupções

Interrupções

ü Vetor de Interrupções

4Cada interrupção gera um endereço que, na maioria das arquiteturas, é usado como um índice em uma tabela (vetor de interrupções), que contém endereços de memória das rotinas de tratamento de interrupção

Índice do Vetor Descrição

0 Erro de divisão

2 Uso de apontador nulo

4 Overflow

7 Dispositivo não disponível

11 Segmento ausente

13 Acesso ilegal à posição de memória

14 Página ausente

16 Erro em operação com número em ponto flutuante 19-31 Entrada reservada, não use

32-255 Interrupções que podem ser desabilitadas Tabela com algumas entradas do vetor de interrupções para o processador Pentium da Intel

(12)

23 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Interrupções

Interrupções

ü Níveis de prioridade de interrupções

4Esse sistema permite à CPU protelar o tratamento de interrupções de baixa prioridade sem desabilitar todas as interrupções e possibilita que o controle da execução de uma interrupção seja interrompido e transferido para uma interrupção de alta prioridade.

4Exemplos de situações que geram interrupções:

–Operações de E/S

–Tratamento de exceções (div. por zero, end. proteg.)

–Mecanismo de paginação

–Chamadas a rotinas do núcleo (system calls)

–Gerenciamento do fluxo de execução do núcleo (per-mite que trabalhos urgentes sejam tratados primeiro)

Princípios de Hardware:

Princípios de Hardware:

Acesso Direto à Memória

Acesso Direto à Memória

Ø

Operação de leitura em disco sem suporte à DMA:

ü Device Driver executa operação de E/S gravando comando no registrador do controlador

ü Controlador lê o bloco do dispositivo, bit a bit, para seu buffer interno

ü Controlador executa verificação de erros (checksum )

ü Controlador causa interrupção

ü SO reassume CPU e lê o bloco do buffer do controlador para a memória byte a byte (chamado de E/S programada)

»Isto consome um tempo apreciável da CPU »Solução: usar DMA (Direct Memory Access)

(13)

25 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Acesso Direto à Memória

Acesso Direto à Memória

Ø

Controladores que suportam DMA:

ü CPU (SO) fornece, além do endereço do bloco a ser lido: 4endereço de memória para onde o bloco deve ser copiado 4número de bytes a serem transferidos

ü Controlador lê bloco

ü Controlador efetua checksum

ü Controlador de DMA copia, via barramento, byte a byte, as informações do buffer para a memória principal

ü Controlador causa interrupção

ü SO reassume CPU com os dados já disponíveis ao processo que os solicitou

Princípios de Hardware:

Princípios de Hardware:

Acesso Direto à Memória

Acesso Direto à Memória

Barramento PCI Controlador de disco IDE disco disco disco disco barramento entre memória e CPU DMA/barramento/ controlador de interrupções processador memória cache memória Sinais: Requisição de DMA Confirmação de DMA

(14)

27 Sistemas Operacionais -Entrada e Saída Eduardo Nicola F. Zagari

Princípios de Hardware:

Princípios de Hardware:

Acesso Direto à Memória

Acesso Direto à Memória

Ø

Por que o controlador puro não armazena diretamente os bytes na

memória, tão logo ele os obtenha? Isto é, por que usar um buffer

interno?

ü Diferença de velocidade ⇒vários acessos ao barramento

Ø

Ainda há um problema: enquanto controlador faz transferência de

dados de/para a memória, próximo setor passa por debaixo da

cabeça do disco

ü Solução: intercalação 0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7

Referências

Documentos relacionados

Para que isso não ocorra, o cache de memória é usado como um intermediário na conversa do processador com a memória RAM, já que o cache é capaz de conversar

Controlador Suporte para monitor externo Tamanho da memória Processador Placa gráfica Intel UHD 630 ● Porta DP++ 1.4/HDCP 2.3. ● Porta de saída HDMI —

A ferramenta utilizada no presente trabalho tem como objetivo mensurar a satisfação do cliente para o serviço prestado, a partir da determinação do GAP (lacuna / falha) de serviço,

[r]

E) No Microsoft Word 2016, o recurso CONTROLAR ALTERAÇÕES, permite marcar alterações de formatação realizadas no documento. Para ativar esse recurso, o usuário pode utilizar o

Ao se conduzir esta mesma reação em diversas temperaturas, obtêm-se diferentes valores para a constante de velocidade de reação k, conforme os dados da

Se o cão não largar após o primeiro comando (permitido), o condutor receberá ordem do Juiz para dar até mais dois comandos para largar. Se o cão não largar após o segundo

Paula Schild Mascarenhas, por meio da Secretaria de Administração e Recursos Humanos, no uso de suas atribuições legais, de acordo com a Lei Federal n° 11.788, de 25 de setembro