Tiago Mazzutti Eduardo Steiner Prof. Dr. Antônio Augusto Fröhlich

Tamanho: px
Começar a partir da página:

Download "Tiago Mazzutti Eduardo Steiner Prof. Dr. Antônio Augusto Fröhlich"

Transcrição

1 UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA SISTEMAS OPERACIONAIS DETECÇÃO E TÉCNICAS DE RECUPERAÇÃO DE ERROS CAUSADOS POR FALHAS TRANSIENTES A NÍVEL DE S.O. Tiago Mazzutti Eduardo Steiner Prof. Dr. Antônio Augusto Fröhlich Florianópolis, novembro de 2008

2 LISTA DE FIGURAS Figura 1 Explosões solares Figura 2 Tempestade solar Figura 3 Detecção de raios cósmicos Figura 4 Mecanismo de check-point e rollback (MASUBUCHI et al., 1997)

3 LISTA DE ABREVIATURAS E SIGLAS DUE detected unrecoverable error, p. 7 FRM Fault Recovery Mecanism, p. 10 RMT Redundant Multithreading, p. 9 SDC silent data corruption, p. 7 SIS Signatured Instruction Streams, p. 9 SO Sistema Operacional, p. 8

4 SUMÁRIO 1 INTRODUÇÃO p. 4 2 RAIOS CÓSMICOS p DETECÇÃO DE RAIOS CÓSMICOS p. 5 3 SOFT ERROR p. 7 4 DETECÇÃO E RECUPERAÇÃO DE ERROS POR SOFTWARE p DETECÇÃO DE FALHAS(FAULT DETECTION) p DETECÇÃO DE FALHAS POR EXECUÇÃO REDUNDANTE p TÉCNICAS DE RECUPERAÇÃO DE ERROS(ERROR RECOVERY TECHNI- QUES) p CHECK-POINT E ROLLBACK p. 10 REFERÊNCIAS p. 11

5 4 1 INTRODUÇÃO A interferência eletromagnética é um distúrbio provocado pelos circuitos internos dos equipamentos eletro-eletrônicos (rádios, computadores, lâmpadas, etc) e também por eventos naturais (descargas atmosféricas, raios cósmicos, etc), causando uma resposta indesejada, mau funcionamento ou degradação de performance de equipamentos (PINHEIRO, 2004). A Terra recebe radiação cósmica de diferentes energias vindas do espaço, porém, a maior parte dessa radiação não chega entrar na parte habitada do planeta devido ao seu campo magnético, que reflete ou desvia para os pólos esses raios. Isso faz com que a interferência eletromagnética de radiação cósmica em aparelhos eletrônicos e computadores na terra seja extremamente rara. Porém, computadores que estejam fora desse escudo magnético tem grandes chances de sofrer interferências dessas radiações, é o caso dos satélites.

6 5 2 RAIOS CÓSMICOS Raios Cósmicos são partículas extremamente penetrantes, dotadas de alta energia, que se deslocam a velocidades próximas a da luz no espaço sideral. Portanto, raios cósmicos não são raios, mas partículas de átomos (WIKIPÉDIA, 2008b). Essas partículas podem ser de dois tipos: galáticas e solares. As partículas galáticas são originárias de explosões de supernovas, estrelas entre outras atividades cósmicas e as partículas solares vêm do Sol pelas chamadas tempestades solares. Estas tempestades consistem em erupções na superfície solar que liberam matéria acumulada (as manchas solares) no campo magnético solar. A matéria liberada nessas tempestades é o plasma quente, que são prótons, elétrons e íons, que não formaram nenhum átomo neutro e constituem, basicamente, gás eletrificado. Figura 1: Explosões solares 2.1 DETECÇÃO DE RAIOS CÓSMICOS Ao enfrentar uma tempestade magnética, ou passar por alguma zona onde haja alta intensidade de radiação (WIKIPÉDIA, 2008a), os computadores dos satélites, devem ficar em standby. A detecção de tempestades solares, na maioria das vezes é feita por monitores que estão na terra, ou pela sonda espacial SOHO (PALLONE, 2008), que atua na posição intermediária entre a Terra e o Sol e avisa com uma hora de antecedência a chegada da tempestade cósmica à Terra.

7 6 Figura 2: Tempestade solar Apesar desses modernos sistemas de detecção de raios cósmicos, os satélites não estão salvos de todas as interferências que podem acontecer nos seus computadores. Por essa razão muitas técnicas de detecção e recuperação de erros são usadas. Figura 3: Detecção de raios cósmicos

8 7 3 SOFT ERROR Em eletrônica e computação, um erro é um sinal ou dado que está errado. Erros podem ser causados por um defeito no projeto do hardware, ou por uma componente quebrada. Um soft error, também é um sinal ou dado errado, mas sua causa não é a mesma dos erros convencionais. Após se observar um soft error, não há implicação que o sistema é, de qualquer maneira, menos confiável do que antes. Se for detectado, um soft error pode ser corrigido se reescrevendo o dado certo no lugar do dado errado. Sistemas altamente confiáveis usam detecção e correção de erros em tempo de execução. Porém, em muitos sistemas, pode ser impossível se determinar o dado correto, ou mesmo descobrir a ocorrência de algum. Soft errors envolvem mudanças nos dados (os elétrons em um circuito de armazenamento, por exemplo) mas sem mudanças físicas nos circuitos. Se o dado for reescrito, o circuito estará perfeito novamente. Existem duas categorias de eventos que soft errors podem resultar: silent data corruption (SDC) ou detected unrecoverable error (DUE). Em ambos eventos há corrupção de dados, porém, no caso do DUE, há detecção do soft error, e para evitá-la, o sistema pode quebrar. Já nos eventos da categoria SDC, há corrupção de dados, mas o usuário não tem conhecimento da mesma (a não ser que o sistema quebre, devido aos dados corrompidos) (WIKIPÉDIA, 2008c).

9 8 4 DETECÇÃO E RECUPERAÇÃO DE ERROS POR SOFTWARE As técnicas para detecção de falhas transientes (transient fault) estão se tornando cada vez mais populares. Embora sistemas de tolerância a falha baseados em software degradarem a performance em relação aos implementados em hardware, esquemas desenvolvidos em software são mais baratos, flexíveis e podem ser implementados quando o hardware já estiver em uso. Uma vez que soft errors podem acontecer em dias, meses ou anos e não a todo microsegundo, o tempo de recuperação não é crítico. Assim, implementações de software para recuperação de falhas, as quais levam mais tempo que implementações em hardware, são soluções frequentemente atrativas. O nível de proteção oferecida por esquemas de software pode também ser ajustado, dependendo da aplicação em questão (MUKHERJEE, 2008). Esquemas de software para a tolerância a falhas podem ser classificados em detecção de falha (fault detection) e técnicas de recuperação de erros (error recovery techniques). Ambas podem ser implementadas em múltiplos níveis, no nível de aplicações, Sistema Operacional (SO) ou em máquinas virtuais. No nível do SO a detecção e recuperação de falhas pode ter uma maior cobertura, mas requer mudanças no SO. 4.1 DETECÇÃO DE FALHAS(FAULT DETECTION) A detecção de falhas usando software tem sido detalhadamente pesquisada. Um software checker vai basicamente checar a violação da condição de um programa, tal como ponteiros e acessos a regiões de memória não mapeadas. Existem dois tipos principais de verificadores de software (software checker): assertion checkers e signature checkers. ASSERTION CHECKERS: Tipicamente vão verificar a consistência das propriedades do programa, por exemplo, violação de acesso a memória, o que pode acontecer devido o um bug de software ou uma falha de hardware. As asserções podem ser específicas à aplicação, tal como asegurar que um determinado valor esteja dentro de certos limites. Alternativamente estas asserções podem ser genéricas, tal como asegurar que um programa não dereferencie um ponteiro para um objeto não mais existente.

10 9 SIGNATURE CHECKERS: A checagem por assinatura tipicamente tem sido usada para violações de fluxo de controle. Quando as instruções em um programa são executadas, uma assinatura é criada para o fluxo de cada grupo de instruções. Essas assinaturas são comparadas com um conjunto pre-determinado de assinaturas que são permitidas em uma execução livre de falhas. Algumas asserções podem ser inseridas pelo programador ou pelo compilador O Signatured Instruction Streams (SIS) é um exemplo de verificação por assinatura. SIS detecta falhas pela comparação de assinaturas geradas estaticamente durante a compilação com as geradas em run-time. Um assinatura é codificada como um grupo de instruções que execução em sequência DETECÇÃO DE FALHAS POR EXECUÇÃO REDUNDANTE A detecção de falhas por execução redundante é uma forma comum que já é usada a décadas. As falhas são detectadas pela comparação das saídas de cada execução redundante. Uma falha é detectada quando as saídas diferem. Dois esquemas de execução redundante comumente usados são Lockstepping e Redundant Multithreading (RMT) (MUKHERJEE, 2008). LOCKSTEPPING: Ambas as cópias tem exatamente o mesmo estado em todos os ciclos de execução. Consequentemente se uma falha acontecer em qualquer das cópias, ela será detectada pela comparação das saídas no mesmo ciclo. REDUNDANT MULTITHREADING (RMT) : Só as saídas das instruções são comparadas, portanto, os estados internos das threads podem ser muito diferentes. 4.2 TÉCNICAS DE RECUPERAÇÃO DE ERROS(ERROR RECOVERY TE- CHNIQUES) Uma vez que a falha tenha sido detectada, um esquema de recuperação de erro precisa ser disparado se o sistemas deseja reduzir a taxa DUE. Recuperação de erros pode ser implementada tanto em hardware quanto em software. Um esquema de recuperação de erros baseado em software, pode ser implementado em 3 possíveis locais: nas aplicações, no SO ou em VMs. Em nível de SO, a recuperação de erros requer mudanças no mesmo (ou em alguns device drivers), as quais podem ser de difícil realização.

11 10 Recuperação de erros no SO são bastante apelativas, por exemplo: Suponha que uma pessoa esteja rodando múltiplas aplicações, tal como um editor e um player em background, quando o sistema quebra. Quando o sistema se recuperar, é esperado que ambos o editor com mudanças não salvas e o player retornem exatamente ao ponto em que estavam. Isto requer um extensivo mechanismo de checkpoints e mechanismos de recuperação. Os sistemas operacionais comerciais ainda não estão completamente adaptados a isto CHECK-POINT E ROLLBACK No Fault Recovery Mecanism (FRM) um checkpoint é adiquirido periodicamente, onde todos os estados dos processos incluindo o contexto do processador são salvos junto com o estado do SO na memória principal. O intervalo do checkpoint deve ser curto (entre 10 e 30 msecs). A tarefa principal de adiquirir checkpoint é reescrever o dado sujo das caches do processador na memória principal. O sistema inteiro, incluindo o SO e todos os programas são objetos de recuperação, e o checkpoint é controlado pelo software do FRM. Quando um erro é detectado, o estado da memória principal sofre um roll back para para o checkpoint mais recente, e a execução continua apartir daquele ponto. Isso permite que o sistema recupere as faltas não-permanentes do hardware(masubuchi et al., 1997). Figura 4: Mecanismo de check-point e rollback (MASUBUCHI et al., 1997)

12 11 REFERÊNCIAS MASUBUCHI, Y. et al. Fault recovery mechanism for multiprocessor servers. In: Fault- Tolerant Computing, FTCS-27. Digest of Papers., Twenty-Seventh Annual International Symposium on. [S.l.: s.n.], p MUKHERJEE, Shubu. ARCHITECTURE DESIGN FOR SOFT ERRORS. [S.l.]: Morgan Kaufmann Publishers, PALLONE, Carlos Vogt; Rafael Evangelista; Simone. Raios Cósmicos. Nov Disponível em: < PINHEIRO, José Mauricio dos Santos. Interferência Eletromagnética. Mar Disponível em: < 01.php>. WIKIPÉDIA. Anomalia do Atlântico Sul. Nov Disponível em: < < WIKIPÉDIA. Soft error. Nov Disponível em: error>. WIKIPÉDIA. Raio cósmico. Nov Disponível em: <

Detecção e técnicas de recuperação de erros causados por falhas transientes a nível de S.O.

Detecção e técnicas de recuperação de erros causados por falhas transientes a nível de S.O. Detecção e técnicas de recuperação de erros causados por falhas transientes a nível de S.O. Eduardo Steiner & Tiago Mazzutti Universidade Federal de Santa Catarina - UFSC Sistemas Operacionais Prof. Dr.

Leia mais

Técnicas para obtenção de Tolerância a Falhas

Técnicas para obtenção de Tolerância a Falhas Técnicas para obtenção de Tolerância a Falhas Tolerância a falhas / defeitos Bibliografia H. Kopetz, Design Principles for Distributed Embedded Applications, Kluwer Academic Publishers, 1997. 1 Tolerância

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Tolerância a Falhas Sistemas Distribuídos é a junção de computadores + rede + aplicação onde os computadores que estão conectados em rede coordenam suas ações através de troca de mensagens e se apresenta

Leia mais

Sequência 17 Organização e Hierarquia de Memória

Sequência 17 Organização e Hierarquia de Memória Arquitetura de Computadores Os cincos componentes clássicos do computador Sequência 17 Organização e Hierarquia de Memória Seq.17 Memórias - conceitos 1 Seq.17 Memórias - conceitos 2 Memória A memória

Leia mais

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES Adão de Melo Neto 1 INTRODUÇÃO Desde 1950, houveram poucas inovações significativas nas áreas de arquitetura e organização de computadores. As principais

Leia mais

Arquitetura de Computadores. Conjunto de Instruções

Arquitetura de Computadores. Conjunto de Instruções Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas

Leia mais

Universidade Federal do Rio de Janeiro Pós-Graduação em Informática. Introdução. Gabriel P. Silva. Gabriel P. Silva

Universidade Federal do Rio de Janeiro Pós-Graduação em Informática. Introdução. Gabriel P. Silva. Gabriel P. Silva Universidade Federal do Rio de Janeiro Pós-Graduação em Informática Microarquiteturas de Alto Desempenho Introdução Introdução Bibliografia: Computer Architecture: A Quantitative Approach. John L. Hennesy,

Leia mais

Arquiteturas RISC e CISC. Adão de Melo Neto

Arquiteturas RISC e CISC. Adão de Melo Neto Arquiteturas RISC e CISC Adão de Melo Neto 1 Arquitetura RISC Arquitetura RISC. É um das inovações mais importantes e interessantes. RISC significa uma arquitetura com um conjunto reduzido de instruções

Leia mais

Avaliação de Desempenho

Avaliação de Desempenho Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de

Leia mais

BANCO DE DADOS 2 TRANSAÇÃO

BANCO DE DADOS 2 TRANSAÇÃO BANCO DE DADOS 2 TRANSAÇÃO Prof. Edson Thizon Reconstrução ( recovery ) Idéia básica Em algum momento no tempo, todo sistema computacional apresentará uma falha. O SGBD deve incorporar mecanismos de proteção

Leia mais

Microarquiteturas Avançadas

Microarquiteturas Avançadas Universidade Federal do Rio de Janeiro Arquitetura de Computadores I Microarquiteturas Avançadas Gabriel P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com

Leia mais

Engenharia de Confiança. Helena Macedo Reis Luis Fernando de Souza Moro

Engenharia de Confiança. Helena Macedo Reis Luis Fernando de Souza Moro Engenharia de Confiança Helena Macedo Reis Luis Fernando de Souza Moro 1 Engenharia de Confiança Preocupada com técnicas que aumentam a confiança e diminui os riscos de falhas Falha pode causar perda de

Leia mais

Introdução à Informática. Alexandre Meslin

Introdução à Informática. Alexandre Meslin Introdução à Informática Alexandre Meslin (meslin@nce.ufrj.br) Objetivos Dispositivos de armazenamento Sistemas de arquivos Memória ROM Memória de apenas leitura Utilizada para armazenar programas e dados

Leia mais

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas MIMD Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Arquiteturas Paralelas (SISD) Single Instruction Stream, Single Data Stream: Monoprocessador

Leia mais

Fundamentos de Astronomia e Astrofísica. O Sol. Rogério Riffel.

Fundamentos de Astronomia e Astrofísica. O Sol. Rogério Riffel. Fundamentos de Astronomia e Astrofísica O Sol Rogério Riffel http://astro.if.ufrgs.br/esol/esol.htm Dados gerais Maior objeto do sistema solar Diâmetro (da fotosfera): 1 391 980 km (100 X diâmetro da Terra)

Leia mais

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software Teste de Software Competência: Entender as técnicas e estratégias de testes de Software Conteúdo Programático Introdução O que é teste de software? Por que é necessário testar um software? Qual a causa

Leia mais

Tolerância a Falhas em Circuitos Integrados Nanométricos

Tolerância a Falhas em Circuitos Integrados Nanométricos Tolerância a Falhas em Circuitos Integrados Nanométricos de Engenharia Jorge Semião IV Jornada Técnica de Electrotecnia Sistemas Tolerantes a Falhas INSTITUTO SUPERIOR DE ENGENHARIA Universidade do Algarve

Leia mais

Nossa Estrela: O Sol. Adriana Válio Roque da Silva. Centro de Rádio Astronomia e Astrofísica Mackenzie Universidade Presbiteriana Mackenzie

Nossa Estrela: O Sol. Adriana Válio Roque da Silva. Centro de Rádio Astronomia e Astrofísica Mackenzie Universidade Presbiteriana Mackenzie Nossa Estrela: O Sol Adriana Válio Roque da Silva Centro de Rádio Astronomia e Astrofísica Mackenzie Universidade Presbiteriana Mackenzie O Sol Parâmetros físicos do sol Estrutura solar Evolução solar

Leia mais

Energia certa significa: quando a energia do fóton corresponde à diferença nos níveis de energia entre as duas órbitas permitidas do átomo de H.

Energia certa significa: quando a energia do fóton corresponde à diferença nos níveis de energia entre as duas órbitas permitidas do átomo de H. ESPECTROSCOPIA II A relação da luz com as linhas espectrais O que acontece se átomos de H forem bombardeados por fótons? R. Existem três possibilidades: 1) a maioria dos fótons passa sem nenhuma interação

Leia mais

Redundância Modular Tripla

Redundância Modular Tripla Instituto Superior de Engenharia do Porto Mestrado de Engenharia Electrotécnica Automação e Sistemas Disciplina de Síntese Alto Nível de Componentes Programáveis Redundância Modular Tripla Elaborado por:

Leia mais

Sistemas Operacionais Aula 15: Sistemas de I/O. Ezequiel R. Zorzal

Sistemas Operacionais Aula 15: Sistemas de I/O. Ezequiel R. Zorzal Sistemas Operacionais Aula 15: Sistemas de I/O Ezequiel R. Zorzal ezorzal@unifesp.br www.realidadeaumentada.com.br Objetivos Explorar a estrutura do subsistema de E/S de um sistema operacional Discutir

Leia mais

Arquitetura de Computadores. Processamento Paralelo

Arquitetura de Computadores. Processamento Paralelo Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Conceito de família IBM System/360 1964 DEC PDP-8 Separa arquitetura de implementação Unidade de controle microprogramada Idéia de Wilkes 1951 Produzida pela IBM S/360

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Avanços e Perspectivas do Projeto Integrade na UFMA

Avanços e Perspectivas do Projeto Integrade na UFMA Avanços e Perspectivas do Projeto Integrade na UFMA Francisco José da Silva e Silva Universidade Federal do Maranhão - UFMA Departamento de Informática Laboratório de Sistemas Distribuídos - LSD Agosto

Leia mais

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o Sistemas Operacionais um pouco da história... - Evolução dos SO s através do tempo - Novas técnicas não são assimiladas simultaneamente por todos - Década de 40, não existia SO - O programador é o faz

Leia mais

Introdução a Teste de Software

Introdução a Teste de Software Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software

Leia mais

Projeto Lógico de Computadores. Profa. MSc. Carolina Melo Santana

Projeto Lógico de Computadores. Profa. MSc. Carolina Melo Santana Projeto Lógico de Computadores Profa. MSc. Carolina Melo Santana karolstana@yahoo.com.br Nível de Máquina de Sistema Operacional Dinâmica: Batata quente Perguntas a serem respondidas pelos alunos que estiverem

Leia mais

Aula 05. Figuras Interrupção

Aula 05. Figuras Interrupção Aula 05 Figuras Interrupção Fluxo de controle com e sem interrupções Ciclos de Instrução Transferência de Controle via Interrupções Transferência de Controle com Múltiplas Interrupções Exercício (ENADE

Leia mais

Subsistemas de E/S Device Driver Controlador de E/S Dispositivos de E/S Discos Magnéticos Desempenho, redundância, proteção de dados

Subsistemas de E/S Device Driver Controlador de E/S Dispositivos de E/S Discos Magnéticos Desempenho, redundância, proteção de dados Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Gerência de Dispositivos Subsistemas de E/S Device Driver Controlador de E/S

Leia mais

Qualquer anormalidade detectada no processamento pode ser classificada

Qualquer anormalidade detectada no processamento pode ser classificada O Movimento ZD no Japão Começou com a disseminação massiva de métodos de CEQ (Deming e Juran) em todos os níveis hierárquicos - baseado em amostragens - pressupõe nível aceitável de defeitos A Detecção

Leia mais

Guia de função do exame médico completo do base de dados UCSM DME

Guia de função do exame médico completo do base de dados UCSM DME Guia de função do exame médico completo do base de dados UCSM DME Índice Introdução Pré-requisitos Requisitos Componentes Utilizados Informações de Apoio Características do exame médico completo do base

Leia mais

Gerência de Memória. Paginação

Gerência de Memória. Paginação Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos

Leia mais

UNIDADE 2 Utilitários de Sistema

UNIDADE 2 Utilitários de Sistema UNIDADE 2 Utilitários de Sistema 1 1. Categorização dos utilitários do sistema 1.1. Ferramentas de gestão de ficheiros 2 Ferramentas de gestão de ficheiros A quantidade de dados que os sistemas informáticos

Leia mais

Organização para Realização de Teste de Software

Organização para Realização de Teste de Software Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses: Desenvolvedores: interesse em demonstrar que o programa é isento de erros. Responsáveis pelos testes:

Leia mais

VERIFICAÇÃO & VALIDAÇÃO

VERIFICAÇÃO & VALIDAÇÃO VERIFICAÇÃO & VALIDAÇÃO Validação: Estamos construindo o produto certo? Verificação envolve checar se o software cumpre com suas especificações. Verificação: Estamos construindo certo o produto? Validação

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Slide 1 Memória Virtual os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida O PDP-1 funcionava com uma memória de 4096 palavras

Leia mais

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3)

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3) Endereçamento Virtual (1) Gerência de Memória Paginação Espaço de endereçamento dos processos não linearmente relacionado com a física Cada vez que são usados, os endereços virtuais são convertidos pela

Leia mais

Bruno da Silva de Oliveira. Hydra: Compilação Distribuída de código fonte

Bruno da Silva de Oliveira. Hydra: Compilação Distribuída de código fonte Bruno da Silva de Oliveira Hydra: Compilação Distribuída de código fonte Florianópolis SC Junho / 2004 Bruno da Silva de Oliveira Hydra: Compilação Distribuída de código fonte Orientador: Prof. Dr. Mario

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

SSC510 Arquitetura de Computadores 1ª AULA SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura

Leia mais

Micro-Arquiteturas de Alto Desempenho. Introdução. Ementa

Micro-Arquiteturas de Alto Desempenho. Introdução. Ementa DCC-IM/NCE UFRJ Pós-Graduação em Informática Micro-Arquiteturas de Alto Desempenho Introdução Gabriel P. Silva Ementa Revisão de Organização de Computadores Hierarquia de Memória Memória Virtual Memória

Leia mais

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação Arquitetura de Computadores I RISC versus CISC Gabriel P. Silva 04.11.2014 Introdução Um dos objetivos de uma arquitetura de

Leia mais

Gerenciamento de memória

Gerenciamento de memória Gerenciamento de memória O que faz? Controla o uso dos espaços em memória Controla os modos de endereçamento dos processos Como funciona a memória? Hierarquia de memória A falta de desempenho A velocidade

Leia mais

Notas da Aula 10 - Fundamentos de Sistemas Operacionais

Notas da Aula 10 - Fundamentos de Sistemas Operacionais Notas da Aula 10 - Fundamentos de Sistemas Operacionais 1. Escalonadores preemptivos Escalonadores preemptivos são aqueles que têm a capacidade de interromper a execução de um processo para realizar alterações

Leia mais

Segmentação de Memória

Segmentação de Memória Segmentação de Memória Pedro Cruz EEL770 Sistemas Operacionais Memória volátil Algoritmos de substituição Substituição de páginas não usadas recentemente Substituição de páginas primeiro a entrar, primeiro

Leia mais

Sistemas Operacionais. Visão Geral

Sistemas Operacionais. Visão Geral Sistemas Operacionais P R O F. B R U N O A L B U Q U E R Q U E S C R I G N O L I Visão Geral Organização da Apresentação Introdução Componentes de um Sistema de Computação Conceito de SO Objetivos de um

Leia mais

Introdução à plataforma Java

Introdução à plataforma Java Introdução à plataforma Java Apresentação: Professor: Galvez Gonçalves prof.gago@gmail.com O que estudaremos 1. Os conceitos de programação orientada a objetos através de uma linguagem de programação que

Leia mais

Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.)

Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.) Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.) Sistemas de Armazenamento Prof. Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Computing Revolution (1960-1980)

Leia mais

Desempenho. Sistemas de Computação

Desempenho. Sistemas de Computação Desempenho Definição Medidas de desempenho utilizadas Tempo de resposta ou tempo de execução: tempo decorrido entre o início da execução de um programa e o seu final Quantidade de trabalho realizada em

Leia mais

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Verificação e Validação Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Objetivos Apresentar a verificação e validação de software e discutir a distinção entre elas Descrever

Leia mais

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações Arquitetura de Computadores Introdução ao Pipeline PIPELINE Linha de Montagem A produção é dividida em várias etapas Produtos em etapas distintas podem ser desenvolvidos separadamente Pode ser Aplicado

Leia mais

Instalação e Manutenção de Computadores

Instalação e Manutenção de Computadores Agenda 1. ELETRICIDADE; 2. TENSÃO ELÉTRICA; 3. COMPONENTES ELETRÔNICOS; 4. MODOS DE TRANSMISSÃO; 5. O SISTEMA INFORMÁTICO; Profª. Janaide Nogueira 1 2 é um assunto que geralmente desperta o interesse e

Leia mais

Sistemas Operacionais. Gerência de Processador

Sistemas Operacionais. Gerência de Processador Sistemas Operacionais Gerência de Processador Sumário 1. Introdução 2. Funções Básicas do Escalonamento 3. Critérios de Escalonamento 4. Escalonamento 1. Não-Preemptivo 2. Preemptivo 5. Políticas de Escalonamento

Leia mais

Tópico 01: Estudo de circuitos em corrente contínua (CC) Profa.: Ana Vitória de Almeida Macêdo

Tópico 01: Estudo de circuitos em corrente contínua (CC) Profa.: Ana Vitória de Almeida Macêdo Disciplina Eletrotécnica Tópico 01: Estudo de circuitos em corrente contínua (CC) Profa.: Ana Vitória de Almeida Macêdo Conceitos básicos Eletricidade Eletrostática Eletrodinâmica Cargas elétricas em repouso

Leia mais

Monitorização correia transportadora

Monitorização correia transportadora Monitorização correia transportadora Para maior segurança e economia de correias transportadoras Máxima segurança e eficiência Todos os componentes de uma correia transportadora deterioram-se permanentemente

Leia mais

CP Introdução à Informática Prof. Msc. Carlos de Salles

CP Introdução à Informática Prof. Msc. Carlos de Salles CP 1015.1 Prof. Msc. Carlos de Salles PROGRAMA 1. CONCEITO DE SISTEMAS 1.1 Sistemas e sua classificação 1.2 Informações e Dados 1.3 O Processamento de Dados 1.4 O Computador e sua História 2. ESTRUTURA

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Motivação Aplicações Motivam Possibilita Engenharia Motivação! Aplicações cada vez mais complexas! Qual a técnica mais comum para redução de complexidade? " Modularização Dividir

Leia mais

Estrutura de Sistemas Operacionais. Capítulo 1: Introdução

Estrutura de Sistemas Operacionais. Capítulo 1: Introdução Estrutura de Sistemas Operacionais 1.1 Silberschatz, Galvin and Gagne 2005 Capítulo 1: Introdução O que faz um sistema operacional? Revisão da organização de um computador Revisão de alguns conceitos de

Leia mais

Comparação de eficiência entre OpenCL e CUDA

Comparação de eficiência entre OpenCL e CUDA Aluno: Thiago de Gouveia Nunes Orientador: Prof. Marcel P. Jackowski GPGPU O que é GPGPU? É programação de propósito geral em GPUs. =D GPGPU Existem 2 linguagens populares no mercado para GPGPU, o CUDA

Leia mais

LIC. Organização e Estrutura Básica Computacional. Prof. Marcelo Costa Oliveira 2006, Marcelo Costa oliveira

LIC. Organização e Estrutura Básica Computacional. Prof. Marcelo Costa Oliveira 2006, Marcelo Costa oliveira LIC Organização e Estrutura Básica Computacional Prof. Marcelo Costa Oliveira licufal@gmail.com História 1946 Inventado o 1º computador eletrônico de grande porte ENIAC Universidade da Pensilvania: 18.000

Leia mais

Computadores e Programação (DCC/UFRJ)

Computadores e Programação (DCC/UFRJ) Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo

Leia mais

Sistemas Operacionais. Entrada/Saída

Sistemas Operacionais. Entrada/Saída Sistemas Operacionais Entrada/Saída Atualizado em 28/02/2014 Como ocorre a comunicação de E/S Aplicação Operações de E/S Chamadas de Sistema S.O. Subsistema de E/S Núcleo (Kernel) Drivers HARDWARE Controladoras

Leia mais

Sistemas Operacionais. Prof. MSc. André Yoshimi Kusumoto

Sistemas Operacionais. Prof. MSc. André Yoshimi Kusumoto Sistemas Operacionais Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar sua interação

Leia mais

Proposta Curricular da disciplina de Física

Proposta Curricular da disciplina de Física Proposta Curricular da disciplina de Ensino Médio 1ª Série Tema: Movimentos: variações e conservações 1º Bimestre Conteúdos gerais Grandezas do movimento: identificação, caracterização e estimativa de

Leia mais

Física. baseado nos Padrões Curriculares do Estado de São Paulo

Física. baseado nos Padrões Curriculares do Estado de São Paulo Física baseado nos Padrões Curriculares do Estado de São Paulo 1 PROPOSTA CURRICULAR DA DISCIPLINA DE FÍSICA High School 2 9 th Grade Movimentos: variações e conservações. Grandezas do movimento: identificação,

Leia mais

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Memória: O Gargalo de Von Neuman Memória principal: considerada como sendo

Leia mais

Memória virtual. Pedro Cruz. EEL770 Sistemas Operacionais

Memória virtual. Pedro Cruz. EEL770 Sistemas Operacionais Memória virtual Pedro Cruz EEL770 Sistemas Operacionais Avisos Menos de um mês para a 1ª apresentação do trabalho Dia 22/9/2017 O que fizeram até agora? Análises Estratégias Problemas Soluções Presenças

Leia mais

Princípios da Engenharia de Software aula 03

Princípios da Engenharia de Software aula 03 Princípios da Engenharia de Software aula 03 Prof.: José Honorato Ferreira Nunes Material cedido por: Prof.: Franklin M. Correia Na aula anterior... Modelos de processos de software: Evolucionário Tipos

Leia mais

Fundamentos de Sensoriamento Remoto

Fundamentos de Sensoriamento Remoto UNIVERSIDADE DO ESTADO DE SANTA CATARINA PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA CIVIL DISCIPLINA: Geoprocessamento para aplicações ambientais e cadastrais Fundamentos de Sensoriamento Remoto Profª. Adriana

Leia mais

Capítulo 13: Sistemas de E/S. Operating System Concepts with Java 7th Edition, Nov 15, 2006

Capítulo 13: Sistemas de E/S. Operating System Concepts with Java 7th Edition, Nov 15, 2006 Capítulo 13: Sistemas de E/S Capítulo 13: Sistemas de E/S Hardware de E/S Interface de E/S da aplicação Subsistema de E/S do kernel Transformando requisições de E/S em operações de hardware Fluxos Desempenho

Leia mais

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura Introdução Organização e Arquitetura INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Eduardo Max Amaro Amaral Arquitetura são os atributos visíveis ao programador. Conjunto de instruções, número

Leia mais

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Verificação e Validação (V&V) S.L.Pfleeger (Cap.8 & 9) R.Pressman (Cap.13 & 14) I.Sommerville (Cap.22 & 23) Introdução Verificação

Leia mais

Engenharia de Software Sistemas Sociotécnicos

Engenharia de Software Sistemas Sociotécnicos Engenharia de Software Sistemas Sociotécnicos Prof. Carlos Lucas uma vela não perde sua chama acendendo outra Apenas 5% dos professores fizeram, fazem e farão a diferença 1 Sistema Sistemas Sociotécnicos

Leia mais

falhas em sistemas distribuídos

falhas em sistemas distribuídos Tolerância a Falhas falhas em sistemas distribuídos Lamport: A distributed system is a system where I can t get any work done if a machine I ve never heard of crashes. sistemas distribuídos e falhas parciais

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Entrada e Saída Slide 1 Entrada e Saída Dispositivos Externos E/S Programada Organização e Arquitetura de Computadores I Sumário E/S Dirigida por Interrupção

Leia mais

O Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho

O Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho Ciência da Computação Arq. e Org. de Computadores Avaliando e Compreendendo o Desempenho O Que Veremos Avaliando e compreendendo o desempenho: Introdução Definindo desempenho Medindo o desempenho e seus

Leia mais

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise

Leia mais

É o processo de recuperar ou restaurar informações digitais que foram perdidas, apagadas, corrompidas ou ficaram inacessíveis por algum motivo.

É o processo de recuperar ou restaurar informações digitais que foram perdidas, apagadas, corrompidas ou ficaram inacessíveis por algum motivo. O QUE É RECUPERAÇÃO DE DADOS? É o processo de recuperar ou restaurar informações digitais que foram perdidas, apagadas, corrompidas ou ficaram inacessíveis por algum motivo. Dados são perdidos com mais

Leia mais

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto Sistemas Operacionais Abertos Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar

Leia mais

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca Sistemas Operacionais Gerenciamento de Memória Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Memória Física vs. Memória do Programa Memória P Física Tamanho dos softwares

Leia mais

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES Tecnologia da informação e comunicação UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES CICLO DE INSTRUÇÕES OU DE EXECUÇÃO Arquitetura de computadores 2 CICLO DE EXECUÇÃO No inicio de cada ciclo de instrução,

Leia mais

Sistemas Operacionais. Tipos de SO

Sistemas Operacionais. Tipos de SO Sistemas Operacionais Tipos de SO Tipos de Sistemas Operacionais Tipos de Sistemas Operacionais Sistemas Monoprogramáveis/ Monotarefas Sistemas Multiprogramáveis/ Multitarefas Sistemas com Múltiplos Processadores

Leia mais

Detecção e Correção de Erros. 13/07/16 Departamento de Ciência da Computação

Detecção e Correção de Erros. 13/07/16 Departamento de Ciência da Computação Detecção e Correção de Erros 1 Objetivo Entender como o computador pode detectar erros e corrigí-los Perceber a importância da detecção e correção de erros Saber onde estes algoritmos podem ser aplicados

Leia mais

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES FACULDADE DOS GUARARAPES INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES Conceitos Básicos Prof. Rômulo César romulodandrade@gmail.com romulocesar@faculdadeguararapes.edu.br www.romulocesar.com.br INTRODUÇÃO

Leia mais

Unidade 3 O ar e a atmosfera

Unidade 3 O ar e a atmosfera Sugestões de atividades Unidade 3 O ar e a atmosfera 6 CIÊNCIAS 1 Propriedades do ar 1. Como mostra a figura a seguir, o ar pode ser comprimido e depois voltar à situação inicial. Que propriedades são

Leia mais

Carlos Eduardo Batista Centro de Informática - UFPB

Carlos Eduardo Batista Centro de Informática - UFPB Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação Arquitetura de computadores modernos Desafios da programação concorrente Definição de concorrência Correr junto Disputa por

Leia mais

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 08 Arquiteturas VLIW 1. Introdução VLIW é Very

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES AULA 5: REDE DE ACESSO CAMADA ENLACE. Prof. LUIZ LEÃO

FUNDAMENTOS DE REDES DE COMPUTADORES AULA 5: REDE DE ACESSO CAMADA ENLACE. Prof. LUIZ LEÃO AULA 5: REDE DE ACESSO CAMADA ENLACE Prof. LUIZ LEÃO Conteúdo Desta Aula FLUXO DE TRANSMISSÃO TOPOLOGIA FÍSICA PROTOCOLOS DE CONTROLO DE ACESSO 1 2 3 4 5 LINHAS DE COMUNICAÇÃO MÉTODOS DE CONTROLE DE ACESSO

Leia mais

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima Gerência de Projetos e Qualidade de Software Prof. Walter Gima 1 OBJETIVO Compreender uma série de técnicas de testes, que são utilizadas para descobrir defeitos em programas Conhecer as diretrizes que

Leia mais

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar - Aula 1 - O NÍVEL DA LÓGICA DIGITAL 1. INTRODUÇÃO Na parte inferior da hierarquia da figura abaixo encontramos o nível da lógica digital, o verdadeiro hardware do computador. Este nível situa-se na fronteira

Leia mais

Qualidade de software. Prof. Emiliano Monteiro

Qualidade de software. Prof. Emiliano Monteiro Qualidade de software Prof. Emiliano Monteiro Por que realizar revisões por pares? 1. Para melhorar a qualidade. 2. Captura 80% de todos os erros se feito corretamente. 3. Captura erros de codificação

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

Sistemas Operacionais. Sistema de entrada e Saída

Sistemas Operacionais. Sistema de entrada e Saída Sistemas Operacionais Sistema de entrada e Saída Sistema de Entrada e Saída I/O É uma das principais tarefas de um sistema computacional Como máquina abstrata o S.O. deve oferecer uma visão padronizada

Leia mais

Verificação e Validação

Verificação e Validação Verificação vs Validação Verificação e Validação Verificação: Estamos construindo o produto corretamente? O software deve estar de acordo com sua especificação. Validação: Estamos construindo o produto

Leia mais

2.1 NesC Seguem alguns dos principais desafios impostos à linguagem NesC:

2.1 NesC Seguem alguns dos principais desafios impostos à linguagem NesC: 2 TinyOS e NesC O framework de programação mais utilizado em redes de sensores sem fio é composto pelo sistema operacional TinyOS [11] e pela linguagem de programação NesC [12]. A linguagem NesC foi definida

Leia mais

Bruno Ribeiro da Silva. O port de um sistema operacional: uma abordagem ao port do Minix 3 para o Nintendo DS (Rascunho)

Bruno Ribeiro da Silva. O port de um sistema operacional: uma abordagem ao port do Minix 3 para o Nintendo DS (Rascunho) Bruno Ribeiro da Silva O port de um sistema operacional: uma abordagem ao port do Minix 3 para o Nintendo DS (Rascunho) Florianópolis, SC 2 de Julho de 2007 Bruno Ribeiro da Silva O port de um sistema

Leia mais