Entrada e Saída. Walter Fetter Lages

Documentos relacionados
Controlador de DMA. Gustavo G. Parma

Estruturas do Sistema de Computação

Sistemas Operacionais

Hardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização

Lista de Exercícios 1

Roteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens

Comércio e Manutenção de Produtos Eletrônicos. Mapeamento de memória e conexões do Controlador CP-WS13/8DI8DO2AI2AO/USB/OEM. Versão 1.

Sistemas Operacionais. Rodrigo Rubira Branco

ARQUITETURA DE COMPUTADORES. Professor: Clayton Rodrigues da Siva

ENTRADA E SAÍDA DE DADOS

Disciplina: Eletrônica de Potência (ENGC48) Tema: Técnicas de Modulação

Sistemas Operacionais. Rodrigo Rubira Branco

Organização de Computadores 1

Introdução à Informática

Sistemas Operacionais Cap 2 Estruturas de Sistemas Computacionais

Gerenciamento de Entrada e Saída. Ciclo 6 AT1. Prof. Hermes Senger

Organização e Arquitetura de Computadores. Ivan Saraiva Silva

Componentes básicos de um sistema computacional. Cap. 1 (Stallings)

Entrada e Saída. Interface entre periféricos, processador e memória. Fonte: Minho - Portugal 1

Sistemas Operacionais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Microprocessadores. Memórias

4 Sistema Computacional:

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 04 - Concorrência. Cursos de Computação

MAR / 03 Versão 1.1 / 1.2 / 2.0

Organização e Arquitetura de Computadores

Experiência 04: Comandos para testes e identificação do computador na rede.

Acionamento de Motores: PWM e Ponte H

Sistemas Operacionais. Prof. André Y. Kusumoto

INSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA ELETRÔNICA DEPARTAMENTO DE ELETRÔNICA APLICADA TIMER 555

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Professor Léo Matos TI para Concursos

Eletrônica Digital II. Exemplo de um CI com encapsulamento DIP. Diagrama do CI 74XX76.

Veeam Endpoint Backup FREE

Arquitetura e Organização de Computadores I

Informática I. Aula Aula 19-20/06/06 1

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

E/S PROGRAMADA E/S PROGRAMADA E/S USANDO INTERRUPÇÃO

Sistemas Operacionais

Processamento de Dados aplicado à Geociências. AULA 1: Introdução à Arquitetura de Computadores

Microcontroladores e Microprocessadores

ARQUITETURA DE COMPUTADORES

Informática I. Aula 4. Aula 4-11/09/2006 1

Sistemas Computacionais e Hardware. Disciplina: Informática Prof. Higor Morais

Sistemas Operacionais

Tipos de Software e Ambientes de Processamento

Mecanismo de Interrupção

Aula 03. Processadores. Prof. Ricardo Palma

Arquitetura e Organização de Computadores

2. Introdução aos Sistemas Operacionais

Engenharia de Software II

Tema 4 Controlo de Fontes de Energia em Veículos Eléctricos. Orientador: Prof. Dr. Paulo José Gameiro Pereirinha

Visão Geral de Sistemas Operacionais

BIOS - Códigos de erro

Índice. tabela das versões do documento. GPOP - Gerenciador POP _ /01/2016 1/14. título: GPOP. assunto: Manual de utilização

Arquitetura e Organização de Computadores

Unidade 1: O Computador

Telecomunicação e Redes

SISTEMAS DISTRIBUÍDOS

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Módulo FGM721. Controlador P7C - HI Tecnologia

Infraestrutura de Hardware. Entrada/Saída: Comunicação Processador, Memória e E/S

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Univ ersidade Feder al do Rio de Janei ro Informáti ca DCC/IM. Pipeline. Gabriel P. Silva. Gabriel P. Silva

FORMULÁRIO PARA CRIAÇÃO DE DISCIPLINA

Sistemas Operacionais

O que é um banco de dados? Banco de Dados. Banco de dados

Sistemas Operacionais. Alexandre Meslin

Organização de Computadores. (Aula 5) Entrada/Saída

Arquitetura e Organização de Computadores I

Capítulo 5 Gerência de Dispositivos

Entrada e Saída (Input/Output I/O) Organização de Computadores (Aula 5) Entrada/Saída. Diferentes Tipos de Dispositivos (1)

Conceitos básicos sobre computadores

Arquitetura de Computadores. Tipos de Instruções

Entrada e Saída Transmissão Serial e Paralela

Gerência de Entrada/Saída

ENTRADA E SAÍDA (I/O)

Terminal de Operação Cimrex 12

UFCD 0770 Dispositivos e Periféricos Formadora: Sónia Rodrigues

Técnico em Radiologia. Prof.: Edson Wanderley

Sistemas Operacionais

Comandos de Eletropneumática Exercícios Comentados para Elaboração, Montagem e Ensaios

Professor: Gládston Duarte

Hardware. Objetivos do Capítulo

Sistemas Operacionais Processos e Threads

Redes de Computadores

UFSM-CTISM. Comunicação de Dados Aula-02

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco

Sistemas Operacionais Entrada / Saída. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Estrutura de um Computador

Sistemas Operacionais. Sincronização: Semáforos Problema dos Leitores/Escritores

Falta Erro Falha. Motivação. Teste de Software. Falha, Falta e Erro. Falha, Falta e Erro. Falha, Falta e Erro. Falha, Falta e Erro 6/6/11

Arquitetura de Computadores Sistemas Operacionais II

Introdução. Hardware (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação. joseana@computacao.ufcg.edu.

Transcrição:

Entrada e Saída Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Programa de Pós-Graduação em Engenharia Elétrica ELE0002 Sistemas de Automação Copyright (c) Walter Fetter Lages p.1

Introdução Sistemas de tempo real usualmente tem como objetivo o controle de dispositivos de I/O Acessos a dispositivos de I/O usualmente possuem exigências de temporização Diferentes perspectivas do hardware Interface física Interface de programação Device drivers Dispositivos de caractere Dispositivos de bloco Copyright (c) Walter Fetter Lages p.2

Mecanismos de I/O Programmed I/O (PIO) Polling Arquitetura com barramentos de I/O e Memória Independentes Multiplexados Arquitetura com barramento único I/O mapeado em memória Instruções privilegiadas Interrupções Acesso direto à memória (DMA) Chanal de I/O Copyright (c) Walter Fetter Lages p.3

Polling Copyright (c) Walter Fetter Lages p.4

PIO Menor latência possível Alta carga para a CPU Pouco overhead Em sistemas multitarefa pode-se ter uma tarefa exclusivamente para fazer o polling Do ponto de vista das outras tarefas é semelhante a uma interrupção Hardware mais simples Boa previsibilidade temporal Copyright (c) Walter Fetter Lages p.5

Interrupções Copyright (c) Walter Fetter Lages p.6

Interrupções Mascaráveis Podem ser desabilitadas Não mascaráveis Não podem ser desabilitadas Ativas por borda Solicitação ativa quando ocorre transição (subida ou descida) do sinal Ativas por nível Solicitação ativa quando o sinal está em um determinado nível (alto ou baixo) Copyright (c) Walter Fetter Lages p.7

Interrupções Latência Tempo entre a solicitação de interrupção e o início da rotina de tratamento Aninhamento Se o sistema permite aninhamento de interrupções, rotinas de tratamenteo de interrupções podem ser interrompidas Prioridade Interrupções de maior prioridade interrompem as rotinas de tratamento das interrupções de menor prioridade Copyright (c) Walter Fetter Lages p.8

Tipos de Interrupções Interrupções (de hardware) Exceções Geradas internamente pelo processador Interrupções de software Concebidas para testar as rotinas de tratamento de interrupção Interface com o sistema operacional Copyright (c) Walter Fetter Lages p.9

Exceções Faltas Gerada antes da execução da instrução No retorno da rotina de tratamento, a instrução que causo a falta é re-executada Traps Gerada após a execução da instrução Abortos Não permitem o reinício da execução Erros de hardware Inconsistência nas tabelas de sistema Copyright (c) Walter Fetter Lages p.10

Interrupções Latência dependente da arquitetura da CPU e do software de tratamento de interrupção Baixa carga para a CPU Overhead considerável se o tratamento de I/O for simples Copyright (c) Walter Fetter Lages p.11

Tratamento de Interrupções Chaveamento de contexto Preserva o estado da tarefa que estava executando Básico Apenas o contador de programa é salvo/restaurado Parcial Contador de programa e alguns registradores são salvos Completo Vetor de interrupção Eventualmente utilizado para priorização Copyright (c) Walter Fetter Lages p.12

Tratamento de Interrupções Compartilhamento Encadeamento de rotinas de tratamento Identificação do dispositivo Escalonamento Interrupções rápidas Reescalonamento Botton-halves Interrupção faz um pré-tratamento imediato e marca um bottom-half para fazer o house-keeping Copyright (c) Walter Fetter Lages p.13

Acesso Direto à Memória O controlador de DMA assume o controle do barramento e faz a transferência Interrupções são frequentemente utilizadas juntamente com DMA, para sinalizar o fim da transferência de um bloco de dados Copyright (c) Walter Fetter Lages p.14

Modos de Transferência Transferência única Uma transferência a cada requisição Transferência em bloco Um bloco transferido por requisição Transferência por demanda Transferências enquanto a requisição estiver ativa Transferência memória-memória Copyright (c) Walter Fetter Lages p.15

Característica da Transferência Inicialização Inicialização única Reinicialização automática Prioridade Fixa Rotativa Copyright (c) Walter Fetter Lages p.16

DMA Baixa carga para a CPU Baixo overhead Não se presta para I/O interativo Frequentemente utilizado com interrupções para sinalizar o fim da transferência de um bloco de dados Uso de DMA pode comprometer a previsibilidade do sistema de tempo real Copyright (c) Walter Fetter Lages p.17

Canais de I/O Processador de I/O que faz a interface com os dispositivos Processador de I/O executa um programa carregado pela CPU principal Baixa carga para a CPU Baixo overhead Baixa latência Se a memória de código for compartilhada com a CPU causa imprevisibilidade Copyright (c) Walter Fetter Lages p.18

Drivers de Dispositivos Fornecem uma interface uniforme para os níveis superiores do software Definem um conjunto de operações que devem/podem ser suportadas Mapeamento das operações suportadas pelo driver nas operações suportadas pelo dispositivo Virtualização de dispositivos de I/O Através do driver Hardware Abstraction Layer Copyright (c) Walter Fetter Lages p.19

Relógio Manter hora Temporizar o chaveamento de tarefas Registrar o uso da CPU Profiling Time-stamping de mensagens Copyright (c) Walter Fetter Lages p.20

Temporizadores Usualmente em sistemas de tempo real tarefas precisam ser executadas em instantes específicos Hardware Simulados em software Lista ligada ordenada por instante de expiração Watchdog Copyright (c) Walter Fetter Lages p.21

Níveis de Privilégio no ix86 Copyright (c) Walter Fetter Lages p.22

Proteção de I/O no ix86 Existe um nível de privilégio de I/O Apenas processos com nível de privilégio menor ou igual podem executar instruções de I/O Associado a cada processo pode existir um bitmap de permissões de I/O Apenas as portas habilitadas podem ser acessadas Hardware Virtual Virtualização de dispositivos Copyright (c) Walter Fetter Lages p.23

Verificação de Privilégios Copyright (c) Walter Fetter Lages p.24

I/O Permission Bit Map Copyright (c) Walter Fetter Lages p.25

Entradas e Saídas em Automação Digitais Analógicas Em tensão Em corrente Copyright (c) Walter Fetter Lages p.26

Entradas e Saídas Digitais Em tensão TTL 0-5V Coletor Aberto Tensão variável (usualmente 0-30V) Útil para implementar wired-or Isolamento óptico Em corrente Usualmente 0-20mA A Relé Normalmente aberto Normalmente fechado Copyright (c) Walter Fetter Lages p.27

Entradas e Saídas Analógicas Em tensão Unipolar Bipolar Usualmente 5, 12, 24 ou 30V Geralmente a tensão máxima é superior à faixa de operação Entrada para termopar Em corrente Usualmente 0-20mA Single-end Diferencial Em largura de pulso (PWM) Copyright (c) Walter Fetter Lages p.28