Baixe o app para aproveitar ainda mais
Prévia do material em texto
Organização de Computadores Material Teórico Responsável pelo Conteúdo: Prof. Ms. Fábio Peppe Beraldo Revisão Textual: Profa. Esp. Márcia Ota Evolução e Medições • Organização de Computadores • Evolução e Arquiteturas dos Computadores • Sistema de Numeração • Medição de Desempenho de Computadores • Métricas de Medição de Desempenho · Nesta unidade, o aluno terá conhecimento de um breve histórico da evolução tecnológica e, então, passará a estudar os conceitos de sistemas de numeração. Dessa forma o aluno estará apto a realizar distinções tecnológicas e também a fazer conversões matemáticas entre sistemas numéricos. OBJETIVO DE APRENDIZADO Nesta Unidade, aprenderemos um pouco mais sobre o que é a Organização de Computadores, sua evolução e importância, bem como iniciaremos o nosso primeiro tópico de estudo: as formas de medição de desempenho. Desse modo, leia o material com atenção e, se sentir necessidade, releia para que sua absorção seja adequada. Fique atento (a) nessa etapa, pois é o momento oportuno para registrar suas dúvidas; por isso, não deixe de registrá-las e transmiti-las ao professor-tutor. Além disso, para que a sua aprendizagem ocorra num ambiente mais interativo possível, na pasta de atividades, você também encontrará as atividades de avaliação, uma atividade reflexiva e a videoaula. Cada material disponibilizado é mais um elemento para seu aprendizado, por favor, estude todos com atenção! ORIENTAÇÕES Evolução e Medições UNIDADE Evolução e Medições Contextualização A Organização de Computadores ocorreu devido à necessidade constante de se evoluir a tecnologia para melhor servir aos usuários e, por sua vez, com a gama gigantesca de elementos computacionais, fez-se necessário criar formas de identificação e organização desses elementos. A Organização de Computadores se preocupa com aspectos que relacionam as tecnologias de hardware, permitindo uma maneira vantajosa de uso das informações. Nesta unidade da disciplina, caminharemos desde uma introdução ao assunto, abordando, primeiramente, a visão sobre tecnologia no passado e a evolução desse conceito, até os dias de hoje, trazendo, ao nosso estudo, também conceitos de informação, tecnologias e as formas de medição de desempenho das máquinas. 6 7 Organização de Computadores ORIGENS Antes de falarmos sobre a organização em si, precisamos entender “o que” estamos organizando e, para isso, precisamos estudar um pouco os conceitos de máquina, dados, informação e sua evolução até os dias de hoje. Hoje, a sociedade entende por computador, uma máquina composta por partes eletrônicas que possuem a função de processar informações para os usuários. Porém, essa conceitualização contém algumas falhas lógicas que profissionais da área devem reconhecer. Mas o computador não processa informações? Na verdade, não! Evidentemente, um computador tem a função de coletar, manipular e fornecer resultados na forma de informações, ou seja, as informações são o resultado e não o método. O método ou elemento de trabalho são dos dados e estes sim são manipulados de diversas formas para gerar uma informação, daí o nome processamento de dados associado a cursos de tecnologia. O processamento de dados é uma sequência de trabalhos sobre os dados com a função de produzir uma quantidade de informação relevante. Partindo dessa explicação, dados são a matéria-prima coletada de uma ou diversas fontes e a informação é o resultado da manipulação ou processamento do dado. Além do dado, do processamento e da informação, há ainda o conhecimento, que é conceitualizado como o objetivo final da necessidade da informação. Normalmente, essa palavra “conhecimento” é substituída para “tomada de decisão” que se faz importante em diferentes níveis hierárquicos de praticamente todas as empresas/organizações e dentro dessa hierarquia a ideia de que, para algumas pessoas, o elemento de trabalho ou método é um dado que para outra pessoa é uma informação. Podemos exemplificar o PED (processamento eletrônico de dados) em uma empresa pelo seu estoque. A princípio, o objetivo é apenas o de atualizar as informações dos materiais estocados. Para tanto, ou seja, para gerar essa informação de estoque, são necessários dados vindos de diversos outros departamentos recebidos diariamente. Seguindo esse raciocínio, o que seria o processamento dos dados em informações? Simplesmente, seriam operações aritméticas de soma ou subtração para saber as quantidades atuais estocadas. Mas, nesse exemplo, qual o objetivo do controle de estoque? Seria a tomada de decisão (ou conhecimento) de quando e quanto recompor o estoque da empresa em frente dos cenários de escoamento de produtos (no caso de vendas) ou consumo na empresa. 7 UNIDADE Evolução e Medições A crescente avalanche de dados a serem processados, com o passar dos anos, foi o elemento que alavancou o avanço tecnológico e, por sua vez, a dependência cada vez maior de computadores e sistemas eletrônicos em várias áreas de trabalho. Outra área que foi extremamente evoluída em paralelo à computacional foi a de telecomunicações, uma vez que essa foi percebida como o meio de interligar empresas e banco de dados, público ou privados, tornando, praticamente, infinito o universo de coleta de dados para processamento. Alguém pensou em internet? Obviamente, a primeira coisa que vem à mente, com esse exemplo, é a internet que permite a comunicação e troca de dados de forma global, o que aumenta não só a quantidade de dados, mas as possibilidades de informações a serem geradas e também os fins, aos quais serão utilizadas essas informações. A organização de computadores faz parte da grande área de ciência da computação, porém voltada para a visão do programador porque seus estudos sobre o hardware interferem diretamente na elaboração e comportamento de um software. Esse conhecimento que o programador deve ter envolve elementos de instruções de processadores, frequência, endereçamento, tamanho de dados, entre outros, que serão estudados mais à frente em nossa disciplina. Antes disso, veremos, brevemente, a evolução das arquiteturas de computadores, conforme a necessidade de cada época até hoje. Evolução e Arquiteturas dos Computadores A divisão das gerações de computadores é realizada diferenciando a tecnologia de hardware empregada em cada geração, fornecendo-lhe maior velocidade de processamento, capacidade computacional, memória e etc. Vamos ver, agora, cada geração de arquiteturas. 1° Geração: Introdução da tecnologia de válvulas Entre os anos de 1943 e 1946, foi construído na Universidade de Pensil- vânia o Computador Analisador e Integrador Numérico Eletrônico, do inglês, Electronic Numerator, Integrator, Analyzer, and Computer ou como ficou mais conhecido, ENIAC. Sua construção se deu exclusivamente pela necessidade de cálculos mais rápidos e precisos sobre balística e trajetória, uma vez que tais cálculos se demonstram de extrema importância e igualmente dificuldade de realização. Dessa forma, uma máquina, que fizesse tais cálculos, se demonstrou de incrível necessidade em uma situação semelhante no futuro. 8 9 Figura 1 – Foto original do ENIAC sendo utilizado Fonte: Wikimedia Commons O projeto do ENIAC foi realizado por John W. Mauchly, J. Presper Eckert e centenas de outros cientistas. Além disso, pesava por volta de 30 toneladas, ocupando aproximadamente 140 m2, continha mais de 18 mil válvulas e consumia cerca de 140 quilowatts de energia. O ENIAC é considerado pela comunidade como o primeiro computador efetivo da 1° Geração, porém há profissionais e estudiosos da área que consideram a Máquina de Turing como primeira máquina computacional. A Máquina de Turing foi um dispositivo chamado de Máquina Universal, construída pelo gênio matemático e criptoanalista Alan Turing durante a 2° Grande Guerra para descriptografar os códigos alemães gerados pela Máquina Enigma que criava códigos indecifráveis pelas forçasarmadas britânicas. A Máquina de Turing, na verdade, é um modelo abstrato de um computador, restringindo-se apenas aos aspectos lógicos de processamento. Dessa forma, qualquer computador digital pode ser modelado em uma Máquina de Turing. Por esse e outros motivos, máquinas foram consideradas o futuro para auxi- liar o homem em processos aparentemente impossíveis para nossos cérebros e, assim, a ideia de um computador específico para fins militares foi encomendado, lê-se ENIAC. A Máquina de Turing e seus dispositivos podem ser vistos no fi lme de 2014, Jogo de Imitação que é baseado na história de Alan Turing.Ex pl or 9 UNIDADE Evolução e Medições Figura 2 – Réplica da Máquina de Turing Fonte: Wikimedia Commons Figura 3 – Réplica da Máquina Enigma. Fonte: Wikimedia Commons . 10 11 De volta ao projeto do ENIAC, não era uma máquina binária como conhecemos hoje em dia, mas sim uma máquina decimal, ou seja, a representação dos números era feita na base decimal, a qual era utilizada também para a realização das operações aritméticas. A memória consistia em 20 acumuladores, cada um dos quais capazes de armazenar um número decimal de 10 dígitos. O ENIAC possuía uma desvantagem primária que era a necessidade de pro- gramação manual através do ligamento e desligamento de chaves e conexão e desconexão de cabos, o que exigia dias de trabalho. O processo de programação poderia ser extremamente facilitado, se o programa pudesse ser representado de maneira adequada, de modo que fosse armazenado na memória, juntamente com os dados. Tal advento veio com a construção do Computador Variável Discreto Eletrônico, do inglês Eletronic Discrete Variable Automatic Computer ou EDVAC, concluído em 1952 com cerca de 4000 válvulas, 10000 diodos a cristal, e 1024 palavras de 4 bits em memória com uma velocidade de relógio de 1 Mega Hertz. 2° Geração: Introdução da tecnologia de transistores O salto tecnológico dessa geração foi o advento do transistor que é menor, mais barato e gera menos calor que as válvulas usadas antigamente. O material de construção de um transistor também é bem diferente do de uma válvula, sendo o transistor um dispositivo de estado sólido feito de silício. Não foi só na área computacional que o transistor teve influência, ele foi o marco evolucionário de toda a indústria eletrônica da década de 50. Sendo desenvolvidas máquinas extremamente menores em tamanho, acomodadas em salas com controle de temperatura, porém seu custo limitava seu uso para grandes corporações, chegando à casa de milhões de dólares por equipamento. Nessa geração, a programação era totalmente monotarefa sem sistema operacional, ou seja, uma vez que tarefa era iniciada, ela tomava todo o controle do computador e o tempo entre o fim de uma tarefa e o início de outra era muito demorado, mas, mesmo assim, muito mais rápido que a geração anterior. Com a entrada da IBM no mercado de computadores, com a série IBM7000, foi introduzido o hardware de processamento de entrada e saída que acelerou todo o processo, bem como a ideia de sistemas operacionais de controle básico e, posteriormente, em 1962 a introdução da ideia de memória virtual (estudada mais adiante na disciplina). 11 UNIDADE Evolução e Medições Figura 4 – O Computador Transistorizado IBM7000 Fonte: Wikimedia Commons 3° Geração: Introdução da tecnologia de circuitos integrados Diferente de seus antecessores, que tinham seus componentes construídos e montados juntamente um a um, eram extremamente caros e demorados em sua manutenção, os circuitos integrados são dispositivos miniaturizados contendo outros dispositivos semicondutores individuais que realizam o trabalho dos milhões de dispositivos da 2° Geração, chamados dispositivos discretos. Seu domínio do mercado se deu principalmente pela facilidade da produção em massa e a confiabilidade de seus dispositivos. Suas principais vantagens eram o custo baixo e o alto desempenho. O baixo custo só foi possível devido a novas técnicas de fotolitografia, que é uma técnica, onde o circuito integrado e todos seus componentes são desenhados e montados na forma de camadas, utilizando fotomáscaras depositadas umas sobre as outras através de gravação química. Já o alto desempenho vem da capacidade dos componentes do circuito impresso poderem alternar seu trabalho extremamente rápido e consumirem pouca energia (obviamente comparado com os modelos antigos), uma vez que esses componentes estão próximos milimetricamente e são extremamente pequenos. Na década de 70, a técnica de circuitos integrados foi usada em grande escala pelo recém-lançado no mercado, microcomputador que passou a usar microchips. 12 13 Figura 5 – Circuito integrador do Motorola 6800 na década de 70 Fonte: Wikimedia Commons Figura 6 – Circuito integrador do Processador Intel QuadriCore da década de 2010 Fonte: Wikimedia Commons 4° Geração: Introdução dos Microprocessadores Pode-se dizer que a 4° Geração é marcada pela miniaturização dos componentes internos, ou seja, quanto menor o componente, mais destes é possível colocar por circuito integrado. Tabela 1 – Escala de Integração de Componentes por Circuito Integrado Denominação Complexidade (Número de Transistores) Interpretação Comum Interpretação Tanenbaum Interpretação Texas Instrumentos SSI Small Scale Integration 10 1 - 10 Abaixo de 12 MSI Medium Scale Integration 100 10 - 100 12 - 99 LSI Large Scale Integration 1.000 100 - 100.000 100 - 999 VLSI Very Large Scale Integration 10.000 - 100.000 A partir de 100.000 Acima de 1.000 ULSI Ultra Large Scale Integration 100.000 - 1.000.000 - - SLSI Super Large Scale Integration 1.000.000 - 10.000.000 - - 5° Geração: Inteligência Artifi cial Alguns especialistas identificam como a 5° Geração, aquela caracterizada pela introdução da Inteligência Artificial, Artificial Intelligence (AI) e sua global conectividade. Essa AI está disponibilizada em jogos e sistemas de automação de serviços, bem como no trabalho paralelo de empresas de ramo próximo, como, por exemplo, uma indústria automobilística que compra pneus de uma indústria específica de pneus. No início do nosso estudo, falávamos que os estoques necessitaram dos primeiros métodos de informatização; agora, um estoque pode conversar automaticamente com o de outra empresa e comprar produtos quando estes estiverem em baixo número, tudo isso sem a interferência humana, somente via inteligência artificial. 13 UNIDADE Evolução e Medições Um exemplo muito mais próximo de nós seria a interconexão de todos nossos dispositivos, móveis ou não, casas inteligentes, carros inteligentes e assim por diante. Porém, essa geração não é oficializada por todos os autores, que mantêm a 4° Geração como a atual. Sistema de Numeração Como vimos anteriormente, os processadores têm por função básica executar operações matemáticas como a soma, subtração divisões entre outras mais complexas. Para tanto, foram criadas diversas formas para se tentar reproduzir tais funções no computador, sendo a mais comum a notação posicional. Conceitualmente falando, na notação posicional, os algarismos assumem valores diferentes de acordo com a posição relativa dele, sendo o valor total do número a soma dos valores relativos de cada algarismo. Assim sendo, dependendo do sistema de numeração adotado, a quantidade de algarismos que o compõe é chamada de base e, assim, chegamos à famosa conversão de bases. Pode parecer estranho esse conceito, pois a cultura ocidental não utiliza a notação posicional, pois esta é característica dos numerais hindu-arábicos. No sistema ocidental, basta relacionarmos um valor a outro e pronto. Para tanto, convencionou-se dez algarismos (0,1,2,3,4,5,6,7,8,9) que chamamos de sistema decimal. Em outras palavras, a base de um sistema é a quantidade de algarismos que esse sistema possui; logo, no ocidente, utilizamos um sistema de base 10, bem como há o sistema binário que possui base 2 (0 e 1) utilizado como base dalinguagem computacional. Para descobrirmos um número de uma base (x), simplesmente, utilizamos o Teorema Fundamental da Numeração, representado por: N d�x�b i m n i 10 1 = =− − ∑ Onde: • N = número equivalente na base 10; • d = dígito; • b = base (em outro sistema de numeração); • i = índice do dígito ou expoente da base “b”; • m = quantidade de dígitos à direita da vírgula; • n = Quantidade de dígitos à esquerda da vírgula. 14 15 Vamos usar, como exemplo, uma conversão do sistema binário para decimal: • 101,012 → (onde b = 2, m = 2, n = 3) temos: • N10 = 1 x 2 2 + 0 x 21 + 1 x 20 + 0 x 2–1 + 1 x 2–2 • N10 = 4 + 0 + 1 + 0 + 0.25 • N10 = 5.25 Veremos, agora, uma conversão do sistema octal para decimal: • 10118 → (onde b=8, n=4) temos: • N10 = 1 x 83 + 0 x 82 + 1 x 81 + 1 x 80 • N10 = 512 + 0 + 8 + 1 • N10 = 521 Veremos, agora, uma conversão do sistema Hexadecimal para decimal: • 1111 → (onde b=16, n=4) temos: • N10 = 1 x 16 3 + 0 x 162 + 1 x 161 + 1 x 160 • N10 = 4096 + 0 + 16 + 1 • N10 = 4113 Em nosso material complementar, temos o link para um jogo da Cisco de conversões entre binário e decimal, jogue e veja até onde chega, será uma forma bastante competitiva de aprender, será que você consegue raciocinar como uma máquina? Ex pl or De forma muito mais fácil que a conversão para o sistema decimal, a conversão do sistema decimal para outro é realizada dividindo o valor inteiro ou multiplicando o valor fracionário até que se chegue ao inteiro, que se quer converter sucessivamente pelo valor da base para a qual se quer converter. Vamos verificar os exemplos: Pegando o valor 37,125, dividimos primeiro o inteiro: • 3710 → ?2 • 37 ÷ 2 = 18, resta 1 • 18 ÷ 2 = 9, resta 0 • 9 ÷ 2 = 4, resta 1 • 4 ÷ 2 = 2, resta 0 • 2 ÷ 2 = 1, resta 0 Se pegarmos o resultado da última divisão e de ordem retroativa o resto de cada outra divisão, teremos o valor no sistema binário; 3710 → 1001012. 15 UNIDADE Evolução e Medições Agora, pegamos a parte fracionária para dividir: • 37,(125)10 → ?2 • 0,125 × 2 = 0,25, fração de 0 • 0,25 × 2 = 0,50, fração de 0 • 0,50 × 2 = 1,00, inteiro 1 Se pegarmos a representação do digito anterior à vírgula, de forma consecutiva, teremos como resultado 37,(125)10 → 37,(001)2; adicionando o valor descoberto do valor inteiro, temos, então, 37,12510 → 100101,0012. Agora, falta vermos as conversões do sistema Binário para o Octal e Hexadecimal. A conversão de base 2 para base 8 se dá da seguinte forma: • na parte inteira, deve-se formar grupos de três dígitos à esquerda, complemen- tando-se com zeros; • na parte fracionária, deve-se formar grupos de três dígitos à direita, comple- mentando-se com zeros. Essa conversão deve utilizar a tabela de conversão para identificar o valor que cada grupo representa. Tabela 2 – Tabela de conversão de sistemas Decimal Binário Octal Hexadecimal 0 0 0 0 1 1 1 1 2 10 2 2 3 11 3 3 4 100 4 4 5 101 5 5 6 110 6 6 7 111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F Vamos usar, como exemplo de conversão, o seguinte valor binário: • 010101,0101002 → ?8 • 010 = 2 101 = 5 010 = 2 100 = 4 16 17 Assim, temos: • 010101,0101002 → 25,248 A conversão do sistema Binário para Hexadecimal se dá igualmente à conversão para Octal, apenas usando grupos de quatro dígitos à esquerda e à direita, ao invés de três, utilizando a mesma tabela, veja o exemplo: • 11001011101,11110112 → ?16 • 0110 = 6 0101 = 5 1101 = D 1111 = F 0110 = 6 Assim, temos: • 11001011101,11110112 → 65DF616 Essas são as conversões mais utilizadas dentre a área de programação para entender melhor as linguagens de baixo nível. A seguir, na unidade, veremos outras formas de leitura e medição, mas, dessa vez, de desempenho de processamento. Medição de Desempenho de Computadores O desempenho de qualquer hardware computacional tem duas perspectivas de extrema importância para seus fabricantes: a perspectiva do fabricante do hardware que pretende evolucionar o mercado com melhorias de desempenho dos seus componentes e a perspectiva do usuário que pretende realizar comparações entre sistemas distintos, ou seja, quem tiver a melhor tecnologia para o objetivo específico do usuário e, por fim, ganhar a confiança deste, será a empresa com maior lucro, que, no fim das contas, é o objetivo de qualquer empresa. A medição do desempenho dos computadores é, geralmente, feita por comparação entre sistemas de hardware diferentes, no qual aquele com menor tempo de execução é considerado o mais potente e mais desejado. Para essa execução, alguns elementos são levados em consideração como a “latência” ou “Tempo de Execução”, que é o intervalo de tempo entre o início e o fim de uma tarefa. Há também o “throughput” que é o trabalho feito durante um dado tempo, ou seja, quantas tarefas, determinado processador consegue executar em um tempo especifico. O sistema de hardware ideal é aquele com alto throughput e baixa latência, ou seja, maior quantidade de tarefas realizadas por tempo específico e menor tempo de execução. Antes de iniciarmos os trabalhos com instruções na próxima unidade, devemos compreender alguns conceitos sobre desempenho de computadores. O Desempenho do Sistema refere-se ao tempo de execução de um programa com o sistema sem nenhuma carga de processamento. Há também o Desempenho de Processamento que se refere ao tempo do processamento para as tarefas. 17 UNIDADE Evolução e Medições É função do projetista de hardware otimizar o desempenho do computador reduzindo o tempo de processamento, bem como é função do programador reduzir o número de ciclos que um programa consome para executar determinada tarefa. Essa eterna batalha do engenheiro de hardware e do programador pelo melhor desempenho é dada pela equação ciclo/instrução chamado CPI (Cycles Per Instructon) que nada mais é que o valor médio da quantidade de tempo necessário para processamento pelo número de instruções que serão processadas. Dizemos que é uma média, pois instruções diferentes podem demorar tempos diferentes. De uma forma bem simplificada (por enquanto), pode-se definir o tempo de execução de um programa pela equação: tempo instruções programa ciclos instrução segundos ciclo seg = × × = uundos programa Métricas de Medição de Desempenho Vamos ver, agora, algumas métricas que usaremos no decorrer do curso que envolvem a medida de desempenho de computadores. MIPS=Milhões de Instruções Por Segundo MIPS = ×( ) número�de�instruções tempo�de�execução 106 MIPS = × × número�de�instruções número�de�instruções CPI período�ddo�clock ×( )106 MIPS = ×( ) frequencia�do�clock CPI 106 O MIPS serve apenas para taxas de execução de instruções e pode variar entre programas executados no mesmo computador. MFLOPS=Milhoes de Pontos Flutuantes Por Segundo MFLOPS = número�de�operações�de�ponto�flutuante tempo�de�execuução ×( )106 O MFLOPS serve apenas para medir a taxa de desempenho na execução de operações em ponto flutuante, medida esta que depende do programa em análise. Mas, afinal de contas, o que é ponto flutuante? 18 19 O ponto flutuante é um número que não é inteiro e, dessa forma, difícil de ser representado na linguagem de programação; alguns podem ser facilmente representados por decimais como o 1/2=0,5 e outros mais complexos como o 1/3=0,33333... Outro fator importante determinante na medição do desempenho são as me- mórias do processador e da máquina, sua interferência se dá nos seguintes pontos: • Latência de execução de cada instrução: melhora-se com processadores com frequência maior. • Número de instruções executadas por unidade de tempo: melhora-se com mais núcleos no processador. • Tempo de acesso à memória: melhora-se a cache. • Largura de banda no acesso à memória: melhora-se com barramentos de dados mais largos (placa mãe). Em uma das formas de fazer a medição de desempenho via softwares,utiliza- se um benchmark para testar um workload, que é o nome dado ao conjunto de programas que é executado no teste, ou seja, para comparar duas máquinas, deve- se comparar o tempo de execução de um workload idêntico nas duas máquinas. Já um benchmark é uma coleção de aplicações desenvolvidas para avaliar desempenho de máquina, são programas especializados para medição. Dessa forma, os benchmarks formam um workload que o usuário ou engenheiro de hardware e o programador utilizam para medir, adequadamente, o desempenho da máquina. É também muito comum o uso de aplicações reais para a medição e esse método apresenta resultados mais próximos da realidade do usuário quando da especificidade do uso de uma máquina, ou seja, se uma máquina for comprada para um único fim é melhor usar o software de trabalho desse trabalho fim como medição de desempenho. Há dois tipos de benchmarks: • os benchmarks sintéticos fazem a medição através de programas, especial- mente, criados para impor o tipo de comportamento desejado no componente; • os benchmarks de aplicação executam programas do mundo real no sistema. Em um ambiente de engenharia civil, é típico incluir programas de cálculo científico ou CAD. Em ambiente de engenharia de software, incluem-se aplicações de desenvolvimento de software (compiladores, debuggers). Os benchmarks de aplicação oferecem uma melhor medida para a performance no mundo real, como citado no exemplo anterior e os benchmarks sintéticos são usados no teste de componentes individuais, como um disco rígido ou um dispositivo de rede. 19 UNIDADE Evolução e Medições Visitando o endereço abaixo, você encontrará dezenas de aplicações para medição de desempenho do sintético e aplicação. Acesse, explore, conheça e experimente para se familiarizar com as ferramentas mais adequadas a cada situação: Clube do Hardware – Programas para teste de Desempenho. http://goo.gl/CaAjww Ex pl or Nas próximas unidades, vamos explorar mais profundamente os conceitos de instrução e CPU os quais vão necessitar dos conhecimentos aqui estudados; então, não deixe de exercitar e participar dos fóruns para sanar todas suas dúvidas. Nos vemos lá, abraços! 20 21 Material Complementar Indicações para saber mais sobre os assuntos abordados nesta Unidade: Sites The National Museum of Computing http://www.tnmoc.org/ Cisco Binary Game http://goo.gl/Sp8QPR TECMUNDO - O que são FLOPS? http://goo.gl/9Kajmy Vídeos Evolução Computadores-GERAÇÃO ZERO https://goo.gl/OdB4DA 21 UNIDADE Evolução e Medições Referências MONTEIRO, Mario A.; A Organização de Computadores; 5ª Ed.; Editora: LTC; 2012. TANENBAUM, Andrew S.; Organização Estruturada de Computadores; 5ª Ed.; Editora: Pearson Education; 2006. 22
Compartilhar