Organização de Computadores 2005/2006



Documentos relacionados
Organização de Computadores 2005/2006

Arquitetura de computadores

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

Arquitetura e Organização de Computadores 2. Apresentação da Disciplina

Arquitetura e Organização de Computadores. Capítulo 0 - Introdução

Arquitetura e Organização de Computadores. Capítulo 0 - Introdução

DISCIPLINA: Arquitetura e Organização de Computadores II 2ECOM.027

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular ARQUITECTURA DE COMPUTADORES Ano Lectivo 2012/2013

Arquitectura de Sistemas Paralelos e Distribuídos

Aula Fev-07 Arquitectura de Computadores 2006/07

Pontifícia Universidade Católica do Rio Grande do Sul FACULDADE DE INFORMÁTICA

Introdução a Organização e Arquitetura de Computadores

Arquitectura de Computadores Ano lectivo 2008/2009

Computadores de Programação (MAB353)

Software Básico (INF1018)

Organização de Computadores 2005/2006 Processadores Intel

Informática I. Aula 5. Aula 5-13/05/2006 1

SIS17-Arquitetura de Computadores

Unidade Central de Processamento Organização da UCP Execução de instruções em paralelo ("pipeline") Execução de programas

Figura 1 - O computador

UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC

Organização de Computadores 2005/2006 Processadores Intel

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Introdução. Sistemas Distribuídos. Mas, o que é um sistema distribuído? Seriamente. Professor: Paulo Jorge Marques. Professora Práticas: Pinki Meggi

Organização e Arquitetura de Computadores I. Introdução. Ivan Saraiva Silva Leonardo Casillo

Arquitetura de Computadores

Capítulo 8. Software de Sistema

Arquitetura do conjunto de instruções (ISA); características de instruções de máquina; tipos de operandos

Organização e Arquitetura de Computadores

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

ÁREA DISCIPLINAR DE CIÊNCIA E TECNOLOGIA DA PROGRAMAÇÃO. Tem sob a sua responsabilidade as seguintes unidades curriculares:

Arquitetura e Organização de Computadores

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

Introdução aos Computadores


Sistemas de Tempo Real

Apresentação do programa e bibliografia; Regras de funcionamento e de avaliação; Organização interna de um computador

Capítulo 1 Introdução

Algumas características especiais

Introdução à Arquitetura de Computadores

Arquitetura de Computadores Moderna

Organização de Computadores 2005/2006 Processamento Paralelo

Introdução à Informática

Máquinas Multiníveis

Ficha da Unidade Curricular

SIS17 - Arquitetura de Computadores. Introdução (Parte III)

1. DADOS DE IDENTIFICAÇÃO

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM.

Período Letivo 1º Sem./2008 C.H.Teórica 40

UNIVERSIDADE FEDERAL DE PERNAMBUCO - PRÓ-REITORIA PARA ASSUNTOS ACADÊMICOS CURRÍCULO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO PERFIL

SISTEMAS INFORMÁTICOS

Controlador de Interrupções com Prioridades Rotativas Julho de 2001

Prof. Sandrina Correia

Sistemas Distribuídos Visão Geral de Sistemas Distribuídos I. Prof. MSc. Hugo Souza

Curso Técnico em Redes

Sistemas de Bases de Dados

Sistemas Computacionais II Professor Frederico Sauer

Programação Orientada a Objeto

Comparação SDs X Scs

Multi-processamento. Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores

Arquitetura de Computadores. Ivan Saraiva Silva

A Reestruturação da Licenciatura em Engenharia Informática de Junho de 2013

CURSO DE ENGENHARIA DE COMPUTAÇÃO Renovação de Reconhecimento pela Portaria n 123 de 09/07/12 DOU de 10/07/12 PLANO DE CURSO

Introdução ao Design

Algoritmos e Estruturas de Dados I

Conjunto de Instruções e Arquitectura p.1

Organização e Arquitetura de Computadores I. de Computadores

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

História da Computação (Introdução Geral)

Parte 01. Fundamentos de Arquitetura de Computadores. Prof. Pedro Neto

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

RISC - Reduced Instruction Set Computer

Placa de vídeo em CUDA

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

Departamento de Ciências e Tecnologias

Plano de Ensino Curso Superior

AUTOMAÇÃO DE ESCRITÓRIOS ADE

ÁREA DISCIPLINAR DE CIÊNCIA E TECNOLOGIA DA PROGRAMAÇÃO. Tem sob a sua responsabilidade as seguintes unidades curriculares:

Introdução à Programação 2006/07. Computadores e Programação

Linguagem de Programação Introdução a Linguagem Java

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Introdução A Engenharia Da Computação

Instituto Superior de Engenharia do Porto Administração de Sistemas Informáticos I Clusters

Arquitetura de processadores: RISC e CISC

Desempenho de Computadores

Organização de Computadores I

Sistemas Operacionais

Anexo A - A UTILIZAÇÃO DAS TIC PELOS ALUNOS (Questionário)

Fundamentos de Sistemas Operacionais

Arquitetura de Computadores

AULA TEÓRICA 2 Tema 2. Conceitos básicos de informática, computadores e tecnologias de informação. Sistemas de numeração (continuação)

Conflitos. Aula de Março de

Auditoria de senhas em hardware paralelo com o John the Ripper O impacto das tecnologias de processamento paralelo na quebra de senhas

SISTEMAS DISTRIBUIDOS E PARALELOS 2014/2015 1º SEMESTRE

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Introdução à Computação

Transcrição:

Organização de Computadores 2005/2006 Paulo Ferreira paf a dei.isep.ipp.pt Fevereiro de 2006 Informação 2 Docentes..................................................................... 3 Avaliação..................................................................... 4 Pontos importantes.............................................................. 5 Trabalho..................................................................... 6 Apresentação do trabalho.......................................................... 7 A Disciplina 8 Organização de Computadores...................................................... 9 Hardware?................................................................... 10 Fazer Hardware............................................................... 11 Hardware feito em Software....................................................... 12 Hardware feito em Sware......................................................... 13 Máquinas Virtuais.............................................................. 14 Comprar Hardware............................................................. 15 Programar Hardware............................................................ 16 Problemas................................................................... 17 Referências 1................................................................. 18 Referências 2................................................................. 19 Referências 3................................................................. 20 Tópicos..................................................................... 21 Prática 22 Matéria..................................................................... 23 Novas coisas................................................................. 24 Programação................................................................. 25 Conclusão................................................................... 26 1

Informação slide 2 Docentes Teóricas Paulo Ferreira paf a dei.isep.ipp.pt Práticas Alexandre Bragança alex a dei.isep.ipp.pt Paulo Ferreira paf a dei.isep.ipp.pt Luís Nogueira luis a dei.isep.ipp.pt Orlando Sousa orlando a dei.isep.ipp.pt ORGC Apresentação da disciplina slide 3 Avaliação Trabalho prático 40% da nota final (40% de nota mínima) Exame Final 60% da nota final Parte teórica 50% da nota de exame (40% de nota mínima) Sem consulta Parte prática 50% da nota de exame (40% de nota mínima) Com consulta de material em papel trazido pelo próprio Não é permitido o uso de computadores ORGC Apresentação da disciplina slide 4 Pontos importantes Se o aluno não tiver nota mínima numa das partes do exame, tem de fazer novamente as duas partes na época de recurso O exame é individual É possível fazer melhoria do trabalho para a época especial ORGC Apresentação da disciplina slide 5 Trabalho Lançado a 20 de Março Entrega até 28 de Maio Trabalhos atrasados 30% de desconto na nota por cada dia de atraso Entrega: Por correio electrónico ao docente das aulas práticas Código fonte + curto relatório descritivo em formato PDF Grupos Máximo dois alunos por grupo ORGC Apresentação da disciplina slide 6 2

Apresentação do trabalho Todos os elementos do grupo devem estar presentes Será sorteado um aluno do grupo para fazer a apresentação É possivel adiar a apresentação uma vez no máximo Sem apresentação não há nota de trabalho ORGC Apresentação da disciplina slide 7 A Disciplina slide 8 Organização de Computadores Arquitectura de Computadores II O que é que existe dentro? Como funcionam? Como se organizam (dentro)? Como se organizam (fora)? O que é que apareceu desde que os alunos fizeram ARQC? ORGC Apresentação da disciplina slide 9 Hardware? Vale a pena aprender como funciona o hardware? 1. Para fazer hardware 2. Para especificar/comprar 3. Para usar da forma mais adequada ORGC Apresentação da disciplina slide 10 Fazer Hardware Em Portugal? Ferro de soldar e afins? Conhecimentos de electrónica? No entanto... ORGC Apresentação da disciplina slide 11 3

Hardware feito em Software Onde está a fronteira? Linguagens de descrição de hardware + FPGAs Exemplos: VHDL, Verilog,... Pega-se na descrição de um circuito digital, simula-se, verifica-se e configura-se o hardware mexendo apenas num teclado O que é que metemos em hardware, e o que é que fazemos em software? Hardware-Software CoDesign Normal: Placa com µp + Memória + Periféricos para fazer SW Mais recente: Placa com FPGA + memória + ligações Fazemos o µp que quisermos + os periféricos e programas que quisermos Pac-Man, Asteroids, PowerPC, SPARC, Cray XD-1, Mitrion, Nallatech,... Não vamos dar nada disto... ORGC Apresentação da disciplina slide 12 Hardware feito em Sware Máquinas virtuais Java CLR (.Net) Flash Visual Basic UCSD-Pascal Smalltalk Emulação nos mainframes (já desde os anos 60) VirtualPC Rosetta 68000 nos Macs PowerPc (ambiente Classic) ORGC Apresentação da disciplina slide 13 Máquinas Virtuais Como funcionam? Como fazer? Como é que as coisas encaixam? ORGC Apresentação da disciplina slide 14 4

Comprar Hardware O que se quer fazer? A performance da máquina chega? Porquê? O que se pode mudar/modificar no hardware? Como ler as especificações? ORGC Apresentação da disciplina slide 15 Programar Hardware Visão do programador a linguagem esconde a máquina, mas... Como se consegue uma maior performance? Ex: tamanho das caches, saltos condicionais, pipelines Que suporte há para certas operações? Ex: memória virtual, locks, multiplicações, vírgula flutuante Como tirar o máximo partido do Hardware? Ex: GPUs, MMX, SSE, SSE2... Tem de se saber alguma coisa de Arquitectura de Computadores ORGC Apresentação da disciplina slide 16 Problemas O curso é de informática Não é de Computer Science Não é de Computer Engineering A maioria dos cursos existentes não são de informática Livros existentes têm uma grande ênfase ou na teoria da computação ou na implementação física Nós queremos a visão do programador ORGC Apresentação da disciplina slide 17 Referências 1 Os tópicos são quase os mesmos, a aproximação será diferente Curso 6.004 do MIT: Computation Structures Curso 6.823 do MIT: Computer System Architecture Computer Organization and Design, the hardware/software interface, David Patterson e John L. Hennessy; Elsevier/Morgan Kaufman, 620 páginas, 3 a Edição (!), ISBN 1-55860-604-1 O CD que o acompanha tem muito material adicional (texto, tutoriais e simuladores) Arquitecturas: Processadores MIPS + x86 ORGC Apresentação da disciplina slide 18 5

Referências 2 Há outro livro mas chama-se Computer Architecture: a quantitative approach e é de Hennnesy & Patterson ;-) O segundo livro é bem mais pesado O primeiro é mais leve, e pode ser complementado mais facilmente Alvo: desde Hardware Designers a programadores Microprocessors a programmers view por Dewar e Smosna, da McGraw-Hill É de 1990, mas está muito bom (legível e orientado ao software) 450 páginas, ISBN 0-07-016639-0 ORGC Apresentação da disciplina slide 19 Referências 3 Computers systems: a programmer s perspective, por Randall E. Bryant e David R. O Hallaron, Prentice Hall, ISBN 0-13-034074-X cerca de 908 páginas O que é que pode afectar um programa escrito em C? Vai desde representação de informação a programação concorrente e em rede Alvo: programadores avançados Diferença de preços entre edição internacional e North American Os livros usados podem ser uma boa opção financeira, e comparar antes de comprar pode ajudar. ;-) ORGC Apresentação da disciplina slide 20 Tópicos História dos Computadores Anos 60, CISCs Máquinas de pilha Micro programação Pipelines Out of Order Execution e Register Renaming Branch Prediction e Speculative Execution Hierarquia de memória Arquitecturas Super Escalares, VLIW, Vector Computers SMP, processadores Multithreaded Computação Embebida e Móvel Computação Paralela ORGC Apresentação da disciplina slide 21 6

Prática slide 22 Matéria Normalmente: Arquitectura Programação em Linguagem Assembly Um RISC com pipeline Simulação e afins Computação Paralela PVM, MPI, GRID Computing... Programming for performance O que é que terá interesse? ORGC Apresentação da disciplina slide 23 Novas coisas Concorrência/Paralelismo Fiabilidade/Robustez Sistemas Distribuídos Service Oriented Architectures ORGC Apresentação da disciplina slide 24 Programação Orientada à concorrência? Linguagens normais é difícil Hoje queremos várias tarefas ao mesmo tempo Queremos que elas corram (não importa o sítio) Queremos que cooperem com outras tarefas Funcional? Um paradigma que não foi explorado no curso O que é isso? Como funciona? Será que funciona? ORGC Apresentação da disciplina slide 25 7

Conclusão Erlang Uma COPL Concurrency Oriented Programming Language Uma linguagem funcional Como organizar um sistema computacional a partir de diferentes processos que comunicam entre si? Como obter fiabilidade? Continua dentro de momentos... ORGC Apresentação da disciplina slide 26 8