RELÓGIO (TIMER), HARDWARE RELÓGIO (TIMER), HARDWARE RELÓGIO (TIMER), HARDWARE



Documentos relacionados
Mecanismo de Interrupção

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Estruturas do Sistema de Computação

Timer e serviços do Timer

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

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas

Sistemas Operacionais. Prof. André Y. Kusumoto

Sistemas Distribuídos

Sistemas Operacionais Processos e Threads

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

Processos e Threads (partes I e II)

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

O quê um Processador e qual a sua função?

Conceitos de Entrada e Saída

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Técnicas de Manutenção de Computadores

Introdução à Engenharia de Computação

ARQUITETURA DE COMPUTADORES

Sincronização em SDs I. Bruno M. Carvalho Sala: 3B2 Horário: 35T34

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

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 03 Conceitos de Hardware e Software parte 01. Cursos de Computação

Sistemas Operacionais

Sistemas Distribuídos Aula 10

Sistemas Distribuídos Sincronização de Relógios. Edeyson Andrade Gomes

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Organização e Arquitetura de Computadores

Arquitetura e Organização de Computadores

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

CENTRAL PRCESSING UNIT

Arquitetura de Computadores. Tipos de Instruções

Administração de Redes

Sistemas Computacionais II Professor Frederico Sauer

ESTUDO DE CASO WINDOWS VISTA

ARQUITETURA DE COMPUTADORES

Sistemas Distribuídos

BARRAMENTO DO SISTEMA

Sistemas Operacionais

CP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03

Sincronização. Sincronização de Relógios. Relógios Físicos

Sistema Operacional Correção - Exercício de Revisão

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Tipos de sistemas operacionais

Arquitetura e Organização de Computadores I

Arquitetura de Computadores - Revisão -

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Arquitetura de Computadores. Sistemas Operacionais IV

Introdução a Informática. Prof.: Roberto Franciscatto

20/09/2009 TRANSFORMANDO DADOS EM. PROCESSANDO DADOS George Gomes Cabral SISTEMAS NUMÉRICOS INFORMAÇÕES

Boletim Técnico R&D 03/08 CARACTERÍSTICAS DO DRIVER MPC6006L 14 de março de 2008

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

EXPERIÊNCIA 17 USO DO TEMPORIZADOR INTERNO

Arquitetura de Computadores II

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

Sistemas Distribuídos. Aleardo Manacero Jr.

Introdução aos Computadores

Processadores. Prof. Alexandre Beletti Ferreira

ENTRADA E SAÍDA DE DADOS

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Prof.: Roberto Franciscatto. Capítulo 1.1 Introdução

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

ARQUITETURA DE COMPUTADORES

Visão Geral de Sistemas Operacionais

Prof.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais

INDICE PORTUGUÊS. Português

Tecnologia PCI express. Introdução. Tecnologia PCI Express

3. Arquitetura Básica do Computador

Flip-Flops (Aplicações) Prof. Rômulo Calado Pantaleão Camara

Manual de Instalação... 2 RECURSOS DESTE RELÓGIO REGISTRANDO O ACESSO Acesso através de cartão de código de barras:...

Escalonamento no Linux e no Windows NT/2000/XP

Informática. Aulas: 01 e 02/12. Prof. Márcio Hollweg. Visite o Portal dos Concursos Públicos

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

ARQUITETURA DE COMPUTADORES

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

Arquitetura de um Computador

Sistemas Operacionais. Revisando alguns Conceitos de Hardware

Tutorial de Eletrônica Aplicações com 555 v

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Arquitetura de Computadores. Professor: Vilson Heck Junior

Sincronização de Relógios

Sistemas Operacionais

Introdução a Informática. Prof.: Roberto Franciscatto

CDE4000 MANUAL 1. INTRODUÇÃO 2. SOFTWARE DE CONFIGURAÇÃO 3. COMUNICAÇÃO

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura Exemplo

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Controle de Congestionamento

4 Arquitetura básica de um analisador de elementos de redes

Dispositivos de Entrada e Saída

Gerência de Entrada/Saída

Funções de Posicionamento para Controle de Eixos

Servidor de Gerenciamento de Chaves de Encriptação Aérea OTAR

Sincronização em Sistemas Distribuídos

ULA Sinais de Controle enviados pela UC

Atenção! Não está autorizada a reprodução deste material. Direitos reservados a Multilaser.

Introdução aos Sistemas

TRABALHO COM GRANDES MONTAGENS

Prof. Esp. Lucas Cruz

7 Processos. 7.1 Introdução

5 Entrada e Saída de Dados:

Transcrição:

RELÓGIO (TIMER), HARDWARE TEMPORIZADORES SÃO ESSENCIAIS PARA MULTIPROGRAMAÇÃO; HÁ UM DRIVER PARA O TIMER; ALIMENTADO EM 110 OU 220 V, CAUSAVA UMA INTERRUPÇÃO A CADA CICLO DE VOLTAGEM, A UM FREQUÊNCIA DE 50 OU 60 Hz (MAIS SIMPLES E NÃO MAIS EMPREGADO). RELÓGIO (TIMER), HARDWARE CONSTITUÍDO POR UM OSCILADOR DE CRISTAL, UM CONTADOR E UM REGISTRADOR DE APOIO; UM PULSO A CADA CICLO DA VOLTAGEM E UMA INTERRUPÇÃO, APÓS UM DETERMINADO NÚMERO DE PULSOS; UM FRAGMENTO DE CRISTAL DE QUARTZO, MONTADO SOB TENSÃO, GERA UM SINAL PERIÓDICO DE ALTÍSSIMA PRECISÃO, NA FAIXA DE CENTENAS DE MHz; ESSE SINAL BÁSICO, UMA VEZ PERCEBIDO, PODE SER MULTIPLICADO UM NÚMERO PEQUENO DE VEZES PARA OBTER FREQUÊNCIAS DE ATÉ 1 GHz OU MAIORES; FORNECE UM SINAL DE SINCRONIZAÇÃO PARA VÁRIOS CIRCUITOS DA PLACA MÃE. RELÓGIO (TIMER), HARDWARE O SINAL FAZ O CONTADOR DECREMENTAR A CADA PULSO DO CRISTAL; QUANDO O CONTADOR CHEGA A ZERO, OCORRE UMA INTERUPÇÃO;

O REGISTRADOR SERVE PARA INICIALIZAR O CONTADOR E ISTO PODE ACONTECER DE MANEIRA: DÍSPARO ÚNICO (EXPLÍCITA) - MODO ONE-SHOT ONDA QUADRADA (AUTOMÁTICA) - MODO SQUARE WAVE (REPETITIVO) AS INTERRUPÇÕES PERÍODICAS SÃO CHAMADAS DE TIQUES DO RELÓGIO. RELÓGIO (TIMER), HARDWARE COM UM CRISTAL DE 500 MHz, OCORRE UM PULSO A CADA 2 nanoseg; COM UM REGISTRADOR DE 32 BITS (SEM SINAL), AS INTERRUPÇÕES PODEM SER PROGRAMADAS EM INTERVALOS QUE VÃO DE 2 nanoseg A 4,3 seg; RELÓGIO (TIMER), HARDWARE CHIPS DE RELÓGIOS, EM GERAL, TÊM DOIS OU MAIS RELÓGIOS PROGRAMÁVEIS; PERMITEM A INIBIÇÃO PROGRAMADA DE INTERRUPÇÃO; TRABALHAM COM CONTAGEM PROGRESSIVA E, PARA NÃO PERDER O VALOR QUANDO O COMPUTADOR ESTÁ DESLIGADO, ESTE É ARMAZENADO EM REGISTRADORES ESPECIAIS ALIMENTADOS POR BATERIA (PILHA); O RELÓGIO COM BATERIA PODE SER LIDO NA INICIALIZAÇÃO; SE ESTE NÃO EXISTE, PODE-SE PERGUNTAR AO USUÁRIO A HORA ATUAL OU OBTER A HORA DE UM SERVIDOR REMOTO;

RELÓGIO (TIMER), HARDWARE COORDENADA UNIVERSAL DE TEMPO (UTC OU MEIO DIA DE GREENWICH 12 HORAS DE 1/1/1971); PARA O WINDOWS, 1/1/1980; A CADA TIQUE DO RELÓGIO, O TEMPO REAL É INCREMENTADO DE 1; OS DEMAIS ASPECTOS ENVOLVENDO TEMPO DEVEM SER TRATADOS PELO SOFTWARE (DRIVER) - EXECUTADO VÁRIAS VEZES POR SEGUNDO. DRIVER DE RELÓGIO: MANUTENÇÃO DA DATA E HORA, EM RELÓGIOS LÓGICOS; PREVENÇÃO DA EXECUÇÃO DE PROCESSOS ALÉM DO ESTABELECIDO (DEADLINE); CONTABILIDADE DE USO DA CPU; TRATAR CHAMADAS ALARM FEITAS PELOS PROCESSOS DO USUÁRIO (SLEEP); FORNECER TEMPORIZADORES WATCH-DOG PARA PARTES DO PRÓPRIO SISTEMA; GERAR PERFIS DE EXECUÇÃO, REALIZAR MONITORAMENTOS E COLETAR ESTATÍSTICAS.

MANUTENÇÃO DA DATA E HORA NÃO PODEM SER MANTIDAS APENAS EM UM REGISTRADOR QUE É LIMITADO - UM REGISTRADOR DE 16 BITS SENDO ATUALIZADO A INTERRUPÇÕES DE 1 µs PODE CONTABILIZAR ATÉ 65.535 ms (POUCO MAIS DE 1 MINUTO); AUMENTAR O REGISTRADOR (A MANUTENÇÃO DO CONTADOR É MUITO DISPENDIOSA); MANTER O TEMPO EM SEGUNDOS EM VEZ DE TIQUES (CONTAM-SE TIQUES ATÉ TER UM SEGUNDO 2 32 SEGUNDOS EXCEDEM 132 ANOS, FUNCIONARÁ ATÉ XXII); CONTAGEM RELATIVA A HORA E DATA FORNECIDAS. EVITAR QUE OS PROCESSOS EXECUTEM POR MUITO TEMPO: O ESCALONADOR INICIALIZA O CONTADOR COM O VALOR DE TIME SLICE DO PROCESSO EM TIQUES DE RELÓGIO; EM CADA INTERRUPÇÃO DO RELÓGIO, O DRIVER DECREMENTA O CONTADOR DE TIME SLICE DE 1; QUANDO O CONTADOR ATINGE ZERO, O DRIVER CHAMA O ESCALONADOR PARA SELECIONAR OUTRO PROCESSO.

CONTABILIDADE DE USO DA CPU: RELÓGIO PRÓPRIO, DISPARADO QUANDO O PROCESSO É ESCALONADO; QUANDO O PROCESSO É INTERROMPIDO, O TEMPORIZADOR PODE SER LIDO, PERMITINDO SABER POR QUANTO TEMPO O PROCESSO ESTEVE EM EXECUÇÃO; SALVA-SE O VALOR DO TEMPORIZADOR E O RESTAURA APÓS O TRATAMENTO DA INTERRUPÇÃO E NOVO ESCALONAMENTO (ÁREA DO PCB). CONTABILIDADE DE USO DA CPU: MANTER UM PONTEIRO PARA A ENTRADA DA TABELA DE PROCESSOS RELATIVA AO PROCESSO, EM UMA VARIÁVEL GLOBAL; A CADA TIQUE DE RELÓGIO, UM CAMPO NA ENTRADA DO PROCESSO ATUAL SOFRE UM INCREMENTO; SE MUITAS INTERRUPÇÕES OCORREREM DURANTE A EXECUÇÃO DE UM PROCESSO, AINDA ASSIM ELE SERÁ CONTABILIZADO COM UM TIQUE COMPLETO, EMBORA NÃO TENHA SIDO EXECUTADO MUITO; A CONTABILIDADE CORRETA PARA A CPU DURANTE AS INTERRUPÇÕES É BASTANTE DISPENDIOSA E RARAMENTE É FEITA.

TIMERS PARA O S.O. E PROGRAMAS: APÓS UM CERTO INTERVALO DE TEMPO, O PROCESSO DEVE RECEBER UM SINAL, UMA INTERRUPÇÃO, UMA MENSAGEM OU ALGO SIMILAR; NA COMUNICAÇÃO EM REDE, UM PACOTE NÃO CONFIRMADO DENTRO DE UM CERTO INTERVALO DE TEMPO DEVE SER RETRANSMITIDO; CAI (COMPUTER AIDED INSTRUCTION) - APÓS UM TEMPO A RESPOSTA É DADA. TIMERS PARA O S.O. E PROGRAMAS: SE UM DRIVER GERENCIA RELÓGIOS SUFICIENTES, PODE USAR UM RELÓGIO PARA CADA REQUISIÇÃO; SE NÃO É O CASO, DEVERÁ SIMULAR VÁRIOS RELÓGIOS VIRTUAIS COM UM RELÓGIO FÍSICO; TRABALHAR COM UMA TABELA ONDE SÃO MANTIDOS OS RELÓGIOS VIRTUAIS PENDENTES E COM UMA VARIÁVEL QUE FORNECE O TEMPO DO SINAL SEGUINTE; SEMPRE QUE A HORA DO DIA É ATUALIZADA, O DRIVER VERIFICA SE O TEMPO DO SINAL MAIS PRÓXIMO JÁ DECORREU; EM CASO AFIRMATIVO, A TABELA É PESQUISADA PARA ENCONTRAR O PRÓXIMO SINAL A OCORRER.

TIMERS PARA O S.O. E PROGRAMAS: SE MUITOS SINAIS SÃO ESPERADOS, É MAIS EFICIENTE SIMULAR VÁRIOS RELÓGIOS POR MEIO DO ENCADEAMENTO DE TODAS AS REQUISIÇÕES DOS RELÓGIOS PENDENTES JUNTAS, ORDENADAS NO TEMPO, NOTAR QUE APÓS UMA INTERRUPÇÃO DE RELÓGIO, O DRIVER TEM VÁRIAS TAREFAS A REALIZAR: INCREMENTAR O TEMPO REAL; DECREMENTAR QUANTUM; CONTABILIZAR USO DE CPU; DECREMENTAR CONTADORES DE ALARME (TIMERS); PARTES DO S.O. TAMBÉM PRECISAM AJUSTAR TEMPORIZADORES (WATCH-DOGS).

NECESSIDADE DE WATCH-DOG PARA MOTOR DE DISQUETE, QUE NECESSITA SER INICIALIZADO (AGUARDAR ATÉ ATINGIR A VELOCIDADE ADEQUADA); NO CASO DE WATCH-DOGS, EM VEZ DO DRIVER CAUSAR UM SINAL, ELE CHAMA UM PROCEDIMENTO DO S.O. FORNECIDO PELO CHAMADOR; DENTRO DO NÚCLEO AS INTERRUPÇÕES SÃO INCONVENIENTES E NÃO SE USAM SINAIS; O DRIVER E O PROCEDIMENTO ESTÃO NO MESMO ESPAÇO DE ENDEREÇAMENTO. PERFIL DE EXECUÇÃO: O S.O. FORNECE UM MECANISMO PELO QUAL UM PROGRAMA DO USUÁRIO PODE OBTER UM HISTOGRAMA DE SEU PC, DE MODO QUE SE POSSA VER EM QUAIS TRECHOS DO PROGRAMA O SEU TEMPO FOI GASTO; A CADA TIQUE DE RELÓGIO, O DRIVER VERIFICA SE O PERFIL DE EXECUÇÃO DO PROCESSO ATUAL ESTÁ SENDO OBTIDO E, EM CASO AFIRMATIVO, SOMA UM AO INTERVALO (UMA FAIXA DE ENDEREÇOS) EM QUE O VALOR DO PC SE ENCONTRA.

TEMPORIZADORES POR SOFTWARE A MAIOR PARTE DOS COMPUTADORES TEM UM SEGUNDO RELÓGIO, QUE PODE SER PROGRAMADO; SE AS APLICAÇÕES REQUEREM INTERRUPÇÕES MUITO FREQUENTEMENTE, HÁ MUITA INTERFERÊNCIA; POR EXEMPLO, UMA REDE ETHERNET GIGABIT PODE MANIPULAR UM PACOTE DE DADOS A CADA 12 µsegundos; PODE-SE CAUSAR UMA INTERRUPÇÃO COM ESSA FREQUÊNCIA ATRAVÉS DE UM TEMPORIZADOR, QUE CAUSA A NECESSIDADE DE 4,45 µsegundos PARA SEU TRATAMENTO (PENTIUM II DE 300 MHz) TEMPORIZADORES POR SOFTWARE EM OPERAÇÕES DE E/S, NAS CPUs ATUAIS, AS INTERRUPÇÕES CAUSAM UMA SOBRECARGA QUATRO CICLOS DE BARRAMENTO PARA EMPILHAR PC E PSW E PARA FAZER A TROCA POR NOVOS VALORES; ALÉM DISSO, NA TROCA DE CONTEXTO, HÁ NECESSIDADE DE TROCAR PIPELINE, MEMORY MANAGEMENT UNIT (MMU TABELA DE PÁGINAS), TRANSLATION LOOK ASIDE BUFFER (TLB É UMA CACHE DE ENDEREÇOS FÍSICOS JÁ CALCULADOS) E CACHE; DUAS SOLUÇÕES SÃO PROPOSTAS: USO DE POLLING PELA APLICAÇÃO; OU TEMPORIZADOR POR SOFTWARE.

POLLING VERIFICAÇÃO SE O EVENTO OCORREU, SEGUINDO UMA CERTA FREQUÊNCIA; SE OCORRER UM ATRASO SUBSTANCIAL, O EVENTO PODE OCORRER IMEDIATAMENTE APÓS A VERIFICAÇÃO, A APLICAÇÃO TERÁ QUE ESPERAR MAIS UM INTERVALO DE POLLING; O ATRASO, NA MÉDIA, É METADE DO INTERVALO DE POLLING. TEMPORIZADORES POR SOFTWARE SEMPRE QUE O NÚCLEO ESTÁ EXECUTANDO, ANTES DE RETORNAR AO MODO USUÁRIO, VERIFICA O RELÓGIO DE TEMPO REAL PARA AVERIGUAR SE UM TEMPORIZADOR POR SOFTWARE EXPIROU; SE EXPIROU, O EVENTO ESCALONADO É EXECUTADO; APÓS O TRABALHO SER EXECUTADO, O TEMPORIZADOR POR SOFTWARE É DE NOVO INICIALIZADO; ENTRADAS NO NÚCLEO SÃO CAUSADAS POR: CHAMADAS AO SISTEMA; FALTAS NA TLB; FALTAS DE PÁGINAS; INTERRUPÇOES DE E/S; CPU OCIOSA; ENTRE OUTRAS.

TEMPORIZADORES POR SOFTWARE MEDIÇÕES COM VÁRIAS CARGAS NA CPU, A FREQUÊNCIA MÉDIA VARIOU DE 2 µsegundos A 18 µsegundos; UM ATRASO DE 10 µsegundos DE TEMPOS EM TEMPOS É MELHOR QUE O CONSUMO DE 35% DO TEMPO DE CPU PARA TRATAR INTERRUPÇÕES; HAVERÁ PERÍODOS EM QUE NÃO HAVERÁ ENTRADAS NO NÚCLEO. PARA COLOCAR UM LIMITE SUPERIOR NESSES INTERVALOS, O SEGUNDO RELÓGIO DE HARDWARE PODE SER AJUSTADO PARA REINICIALIZAR A CADA 1 msegundos; A COMBINAÇÃO DE TEMPORIZADOR POR SOFTWARE E POR HARDWARE (DE BAIXA FREQUÊNCIA) PODE SER MELHOR QUE E/S ORIENTADA SOMENTE POR INTERRUPÇÕES. Exercícios 1. Exercícios do livro de 28 a 31. 2. Suponha que um dispositivo de relógio funciona decrementando seu contador na freqüência de 5Mhz (cada hz equivale a 1/seg). Qual o valor de um tique (tempo entre duas interrupções) desse dispositivo, se este opera em modo automático (square-wave) com o contador projetado para ser inicializado com o valor 100? 3. Qual deve ser o modo de operação de um dispositivo de relógio que deve ser usado para controle de um escalonamento baseado em time-slice? Resgate as estratégias de escalonamento antes de responder. 4. Um relógio real em um SO é um contador de ticks gerados por um dispositivo de relógio. Supondo que esse dispositivo gere uma interrupção a cada micro-segundo, se esse relógio marca a hora desde 01/01/70 em unidades de segundos e milisegundos, explicar como um SO consegue mantê-lo atualizado.

5. Explicar a causa do bug do milênio, aquele problema em que, na passagem de 1999 para o ano 2000, fez com que várias aplicações tivessem a sua lógica afetada. 6. Haverá a possibilidade de um problema similar ao bug do milênio vir a se repetir? Justificar sua resposta. 7. Explique o que é e como funciona um temporizador por software. 8. Qual é a diferença entre um timmer e um watch-dog? 9. O que é o perfil de execução?