160 likes | 271 Views
Universidade do Vale do Rio dos Sinos. Programa Interdisciplinar de Pós-graduação em Computação Aplicada (PIPCA) Disciplina de Organização e Arquitetura de Computadores Introdução ao Conteúdo. Prof. Jorge Luis Victória Barbosa jbarbosa@unisinos.br http://www.inf.unisinos.br~barbosa.
E N D
Universidade do Vale do Rio dos Sinos Programa Interdisciplinar de Pós-graduação em Computação Aplicada (PIPCA) Disciplina de Organização e Arquitetura de Computadores Introdução ao Conteúdo Prof. Jorge Luis Victória Barbosa jbarbosa@unisinos.br http://www.inf.unisinos.br\~barbosa
Organização x Arquitetura • Arquitetura • Atributos visíveis para o programador (conjunto de instruções, • técnicas de endereçamento, etc) • Exemplo: Instruções de divisão/multiplicação disponíveis? • Organização • Como as características da arquitetura são implementadas • (sinais de controle disponíveis, tecnologias de memória, como • instruções são executadas, etc) • Exemplo: ULA suporta multiplicação/divisão • Observações gerais • Toda a família Intel X86 possui a mesma arquitetura básica • Organização varia entre máquinas na mesma família • A mesma arquitetura garante a compatibilidade de código
Linguagens e Máquinas Virtuais (Tanenbaum) Máquina Virtual Mn Linguagem de Máquina LN Nível N . . . Máquina Virtual M2 Linguagem de Máquina L2 Nível 2 Máquina Virtual M1 Linguagem de Máquina L1 Nível 1 Máquina Virtual M0 Linguagem de Máquina L0 Nível 0
VMs de Arquitetura (Virtualização) • Aumento do poder de processamento viabiliza várias VMs • Crescente heterogeneidade estimula abstração para SOs e Aplicações • Crescente complexidade dos sistemas computacionais estimula busca • pela simplificação da administração de recursos • Exemplo: Monitor de Máquinas Virtuais Xen • - Uso da Técnica de Paravirtualização • - Política de código aberto, guiado pela licença GNU • - Orientado para arquiteturas x86 • - Suporte à migração de máquinas virtuais em uso (Life Migration) Xen Domain0 Control Interface Virtual x86 CPU Virtual Physical Memory Virtual Network Virtual BlockDev
Programa Fonte Compilador Compilador Byte Code Código Binário do Processador VM Hardware + SO Hardware + SO VMs de Linguagens de Programação
Exemplo do Java Programa em Java (.java) JavaC Byte Code – Classe (.class) Java Virtual Machine (JVM) Hardware + SO
Máquinas Multinível (Tanenbaum) Nível de Linguagem Orientada para Problemas Nível 5 Tradução (Compilador) Nível de Linguagem de Montagem Nível 4 Tradução (Montador) Nível de Sistema Operacional Nível 3 Interpretação Parcial (S.O.) Nível de Máquina Convencional Nível 2 Interpretação (Microprograma) Nível de Microprogramação Nível 1 Microprograma executado pelo Hardware Nível de Lógica Digital Nível 0
Máquinas Multinível (Tanenbaum) Nível de Linguagem Orientada para Problemas Nível 5 Tradução (Compilador) Nível de Linguagem de Montagem Nível 4 Tradução (Montador) Nível de Sistema Operacional Nível 3 Interpretação Parcial (S.O.) Nível de Máquina Convencional Nível 2 Capítulo 5 Interpretação (Microprograma) Organização e Arquitetura de Computadores Capítulo 4 Nível de Microprogramação Nível 1 Microprograma executado pelo Hardware Capítulo 3 Nível de Lógica Digital Nível 0
Máquinas Multinível (Tanenbaum) Nível de Linguagem Orientada para Problemas Nível 5 Tradução (Compilador) Nível de Linguagem de Montagem Nível 4 Tradução (Montador) Nível de Sistema Operacional Sistemas Operacionais Nível 3 Interpretação Parcial (S.O.) Nível de Máquina Convencional Nível 2 Capítulo 5 Interpretação (Microprograma) Organização e Arquitetura de Computadores Capítulo 4 Nível de Microprogramação Nível 1 Microprograma executado pelo Hardware Capítulo 3 Nível de Lógica Digital Nível 0
Arquitetura Von Neumann Memória Unidade de Controle Unidade Lógica Aritmética (ULA) Entrada Acumulador Saída
Organização de um computador CPU Unidade de Controle Unidade Lógica e Aritmética (ULA) Dispositivos de Entrada e Saída Registradores . . . . . . Memória Principal Disco Impressora Barramento
Evolução do Mundo Digital • Sinal • Analógico ou Digital • Diodo • Chave Lógica • Transistor • Chave com acionamento • Circuitos Integrados (chip) • Integração em silício • Circuito SSI: 1 a 10 portas lógicas • Circuito MSI: 10 a 100 portas lógicas • Circuito LSI: 100 a 100.000 portas lógicas • Circuito VLSI: > 100.000 portas
Lei de Moore (Gordon Moore, Intel, 1965) • “O número de transistores integrados em um chip dobra a cada 18 meses.” • “Um crescimento anual de 60 % no número de transistores integrados.”
Máquinas Multinível (Tanenbaum) Nível de Linguagem Orientada para Problemas Nível 5 Tradução (Compilador) Nível de Linguagem de Montagem Nível 4 Tradução (Montador) Nível de Sistemas Operacional Nível 3 Interpretação Parcial (S.O.) Nível de Máquina Convencional Nível 2 Capítulo 5 Interpretação (Microprograma) Organização e Arquitetura de Computadores Capítulo 4 Nível de Microprogramação Nível 1 Capítulo 3 Microprograma executado pelo Hardware Nível de Lógica Digital Nível 0