introdu o aos sistemas de computa o tanembaum cap tulo 1 l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Software Básico PowerPoint Presentation
Download Presentation
Software Básico

Loading in 2 Seconds...

play fullscreen
1 / 72

Software Básico - PowerPoint PPT Presentation


  • 222 Views
  • Uploaded on

Introdução aos sistemas de computação Tanembaum, capítulo 1. Software Básico. A visão do usuário. O usuário enxerga software, velocidade, capacidade de armazenamento e funcionalidades de periféricos. “Visão do computador” . Circuitos eletrônicos Transistores interconectados

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Software Básico' - paul


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
introdu o aos sistemas de computa o tanembaum cap tulo 1
Introdução aos

sistemas de computação

Tanembaum, capítulo 1

Software Básico
a vis o do usu rio
Organização Estruturada de ComputadoresA visão do usuário

O usuário enxerga software, velocidade, capacidade de armazenamento e funcionalidades de periféricos

vis o do computador
Organização Estruturada de Computadores“Visão do computador”
  • Circuitos eletrônicos
    • Transistores interconectados
    • Chaves ligadas ou desligadas
  • Linguagem de máquina
    • Conjunto de instruções fundamentais que a máquina executa
    • Expressa como um padrão de 0s e 1s
adendo escalas unidades e conven es
Organização Estruturada de ComputadoresAdendo: escalas, unidades e convenções
  • Bit (b), Byte (B), Word (w)
  • Kilo (k/K), Mega(M), Giga(G), Tera(T)
  • Mili(m), Micro(µ), Nano(n), Pico(p)
  • Diferentes escalas:
    • B: bytes (potências de 2)
      • 64 KB = 65.565 bytes
    • b: bits (potências de 10)
      • 1 Mb/s = 1.000.000 bits por segundo

... há divergências...

– você sabe o que é Kibi, Mibi, Gibi, Tibi?...

arquiteturas em n veis
Organização Estruturada de ComputadoresArquiteturas em níveis
  • Qualquer computador atual é extremamente complexo para ser estudado de uma vez…
  • A solução é organizar a máquina em níveis:
    • cada nível é definido em função do anterior
    • problemas são expressos em função da interface definida para cada nível
    • máquinas virtuais e linguagens associadas
m quina virtual
Organização Estruturada de ComputadoresMáquina virtual
  • Imagine que exista uma máquina hipotética (virtual) capaz de executar a linguagem L
    • Máquina M
  • Escreva um programa em L
    • M deve ser capaz de executar esse programa diretamente
  • Mesmo que a máquina virtual seja complexa, o programa ainda pode ser executado a partir da máquina do nível inferior

Falha recorrente no livro: máquinas “reais”

tradu o x interpreta o
Organização Estruturada de ComputadoresTradução x Interpretação
  • Programas representados em um nível têm que ser convertidos para processamento no nível inferior
  • Tradução (compilação)
    • Programa na linguagem do nível L é convertido em equivalente no nível L-1
  • Interpretação
    • Cada instrução do nível L é analisada e o seu efeito é simulado pelo interpretador (programa de M-1)
arquiteturas em n veis atuais
Organização Estruturada de ComputadoresArquiteturas em níveis atuais

Linguagens de alto nível

Interpretação

Tradução (compilador)

Linguagem assembly

Tradução (assembler)

Sistema operacional

Interpretação parcial (chamadas do sistema)

Linguagem de máquina

Execução direta

Interpretação (microprograma)

Microarquitetura

Hardware

Lógica digital

Linguagem de máquina = nível de Arquitetura do Conjunto de Instruções - ISA

arquiteturas em n veis atuais10
Organização Estruturada de ComputadoresArquiteturas em níveis atuais

Programadores de

aplicações

Programas contêm

Palavras e abreviações

Linguagens de alto nível

Interpretação

Tradução (compilador)

Linguagem assembly

Tradução (assembler)

Sistema operacional

Suporte aos

Níveis superiores

Programadores de sistemas

Programas consistem em séries de números

Interpretação parcial (chamadas do sistema)

Linguagem de máquina

Execução direta

Interpretação (microprograma)

Microarquitetura

Hardware

Java: código primeiro compilado para bytecode (semelhante à ISA – nível 2)

depois interpretado

Lógica digital

arquiteturas em n veis atuais11
Arquiteturas em níveis atuais
  • Arquitetura = conjunto de tipos de dados, operações e características de cada nível
  • Arquitetura de um nível
    • trata de aspectos que são visíveis ao usuário daquele nível
    • ex: quantidade de memória disponível é parte da arquitetura
    • aspectos de implementação não fazem parte da arquitetura
    • tecnologia usada para construir memória não é parte da arquitetura
hardware e software
Organização Estruturada de ComputadoresHardware e Software
  • Hardware: objetos tangíveis
    • Circuitos eletrônicos, componentes físicos
  • Software: idéias abstratas
    • Algoritmos, programas
  • Início: fronteira era nítida
  • Com o tempo: adição, remoção, fusão de níveis : fronteira indistinta
hardware e software13
Organização Estruturada de ComputadoresHardware e Software
  • Software e hardware são logicamente equivalentes!
  • “Hardware é apenas software petrificado”, Karen Panetta Lentz
  • Qualquer instrução em software pode ser implementada em hardware
  • Qualquer instrução executada em hardware pode ser simulada em software
  • Decisão depende de custo, velocidade, confiabilidade, e frequência de mudanças esperadas.
evolu o das m quinas multin veis
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • Primeiroscomputadores, década de 40:
    • 2 níveis:
    • Programaçãofeita no nível ISA
    • Nívellógical digital (hardware) executava
    • Circuitoscomplicados, dífíceis de entender e de montar
    • Baixaconfiabilidade

ENIAC, 1946

evolu o das m quinas multin veis15
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • Invenção da microprogramação (Wilkes, 1951)
    • Interpretador embutido imutável (microprograma)
    • Instruções do nível ISA eram interpretadas por várias operações mais simples
    • Simplificação do hardware: reduzir número de válvulas, aumentar confiabilidade
    • Tempo de processamento necessário para fazer a interpretação (overhead)
    • Microprogramação: atingiu seu apogeu na década de 1970
evolu o das m quinas multin veis16
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • A programaçãoevoluiu:
    • passou a ser feita com cartõesperfurados
  • Mas o programadoraindatinhaquecontrolar o computadordiretamente
    • Máquinaociosa
evolu o das m quinas multin veis17
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • Ex de job no SO FMS
  • ~1960: sistemaoperacional
    • Automatizartrabalho do operador
    • Minimizardesperdício de tempo
  • Programadorproduziacartões de controlejuntodom o programaqueeram lidos e executadospelo SO

*JOB, 5494, BARBARRA

* FORTRAN

Programa Fortran

* DATA

Cartões de dados

* END

evolu o das m quinas multin veis18
OrganizaçãoEstruturada de ComputadoresEvolução das máquinasmultiníveis
  • Os sistemas operacionais evoluíram:
    • novas instruções, prinipalmente de E/S
  • No início:
    • processamento em batch ou lote (fim dos '50)
      • Várias horas entre instante em que programa entrava na máquina e horário que terminava
    • Sistemas de tempo compartilhado/time sharing (início ´60)
      • Vários programadores se comunicam diretamente
      • com o computador
      • Terminais remotos conectados ao computador central
      • por linhas telefônicas

IBM 709, 1959

evolu o das m quinas multin veis19
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • Migração de funcionalidade para microcódigo ('70)
    • Extensão do microprograma equivalia a acrescentar novo hardware
    • Explosão de novas instruções para simplificar a vida do programador assembly
    • Muitas insruções não eram essenciais pois seu efeito podia ser conseguido com facilidade com outras instruções
      • EX: INC vs. ADD
    • Exemplos importantes: DEC PDP, DEC VAX
    • Incorporada aos micro-processadores (menos HW)
evolu o das m quinas multin veis20
Organização Estruturada de ComputadoresEvolução das máquinas multiníveis
  • Eliminação da microprogramação ('90)
    • Microprogramas extensos geram lentidão
    • Tendência:
      • Eliminar/reduzir microprograma
      • Reduzir drasticamente conjunto de instruções
      • Execução direta das instruções restantes
    • Compiladores não precisam de instruções complexas
    • Hardware se tornam mais barato

... Mas o mundo continua dando voltas ...

Java e congêneres utilizam byte codes (interpretados)

a pr hist ria
Organização Estruturada de ComputadoresA pré-história
  • Máquinas mecânicas
  • Computadores baseados em relés
  • O computador ABC (não terminado)
computadores mec nicos 1642 1945
Computadores Mecânicos (1642 – 1945)
  • Blaise Pascal, 1642: 1ª máquina de calcular operacional
    • totalmente mecânico,
    • funcionava com uma manivela operada à mão,
    • projetado para ajudar o pai, coletor de impostos,
    • fazia soma/subtração
blaise pascal
Organização Estruturada de ComputadoresBlaise Pascal
  • Pascaline – calculadora simples, 1642
leibniz
Organização Estruturada de ComputadoresLeibniz
  • Calculadora c/ 4 operações básicas, 1672
computadores mec nicos 1642 194526
Computadores Mecânicos (1642 – 1945)
  • Charles Babbage (1792 – 1871)
    • 1ª tentativa: dispositivo mecânico
      • soma/subtração,
      • realizava um único algoritmo
      • saída: perfurava resultados sobre chapa e gravação de cobre (prenúncio de CD-Roms)
    • 2ª tentativa (1834): 1ª máquina analítica (ainda mecânica)
      • 4 unidades: armazenagem, moinho, leitora de cartões perfurados, saída perfurada e impressa
      • armazenagem: 1000 palavras de 50 algarismos decimais
      • moinho: soma/subtração/multiplicação/divisão / testes
      • uso geral: podia realizar cálculos diversos
      • Produção de software: Babbage contratou Ada Lovelace – 1ª programadora de computadores
computadores mec nicos 1642 194530
Computadores Mecânicos (1642 – 1945)
  • Charles Babbage (1792 – 1871)
    • 1ª tentativa: dispositivo mecânico, soma/subtração , realizava um único algoritmo, saída: perfurava resultados sobre chapa e gravação de cobre (prenúncio de CD-Roms)
    • 2ª tentativa (1834): 1ª máquina analítica (ainda inteiramente mecânica)

4 unidades: armazenagem, moinho, leitora de cartões perfurados, saída perfurada e impressa

armazenagem: 1000 palavras de 50 algarismos decimais

moinho: soma/subtração/multiplicação/divisão / testes

uso geral: dependendo dos cartões de entrada, podia realizar cálculos diversos

Produção de software: Babbage contratou Ada Lovelace – 1ª programadora de computadores

  • Konrad Zuse, 1930´s: 1ª máquina calculadora automática com relés eletromagnétios
    • Vários outros esforços nesta época
    • John Atanasoff: máquina super-avançada para época, baseada em aritmética binária. Máquina nunca se tornou realmente funcional
    • Howard Aiken,: revisitou trabalho de Babbage e decidiu construir com relés um computador de uso geral. Quando terminou, os computadores de relés estavam obsoletos.
hollerith
Organização Estruturada de ComputadoresHollerith
  • Proc. de cartões perfurados (censo 1890)
  • Empresa viria a se transformar na IBM (1924)
computadores mec nicos 1642 194532
Computadores Mecânicos (1642 – 1945)
  • Konrad Zuse, 1930´s:
    • 1ª máquina calculadora automática com relés eletromagnétios
  • John Atanasoff:
    • máquina super-avançada para época, baseada em aritmética binária.
    • Máquina nunca se tornou realmente funcional
  • Howard Aiken:
    • revisitou trabalho de Babbage e decidiu construir com relés um computador de uso geral.
    • Quando terminou, os computadores de relés estavam obsoletos.
atanasoff berry computer abc 1939
Organização Estruturada de ComputadoresAtanasoff-Berry Computer (ABC), 1939
  • Incompleto
  • válvulas
  • lógica binária
  • memória dinâmica
harvard mark i
Organização Estruturada de ComputadoresHarvard Mark I
  • Calculador baseado em relés
  • Primeiro “totalmente automático”
primeira gera o v lvulas 1945 1955
Organização Estruturada de ComputadoresPrimeira geração: válvulas (1945-1955)
  • Substitutos naturais dos relés
  • Menor espaço, maior velocidade, sem partes móveis
  • Grande estímulo para computador eletrônico:
    • Segunda Guerra Mundial
  • Mensagens alemãs enviadas codificadas usando ENIGMA
alan turing
Organização Estruturada de ComputadoresAlan Turing
  • COLOSSUS, 1943
  • Primeiro computador eletrônico (válvulas) programável
  • Projeto do Governo

Britânico

  • Segredo militar por 50 anos
  • Desenvolvido para

decodificar msgs

nazistas

eckert e mauchley
Organização Estruturada de ComputadoresEckert e Mauchley
  • ENIAC (Eckert e Mauchley, 1946)
    • Necessidade de cálculos pesados pelo exército dos EUA
    • Idéias de Atanasoff e outros
    • 18000 válvulas e 1500 relés
    • 30 toneladas, 140 kW
    • Cabos e 6000 chaves
    • Arquitetura:20 registradores cada um um número decimal de 10 algarismos
    • Primeiro “bug”
    • Após a guerra,“escola de verão”
john von neumann
Organização Estruturada de Computadores

Unidade

lógica-

aritmética

John Von Neumann
  • IAS – a máquina de von Neumann (1952)
    • Arquitetura dos computadores modernos
    • Programa armazenado em memória
    • Unidades de controle e aritmética

Memória

Entrada

Unidade de

controle

Saída

Acumulador

john von neumann42
John Von Neumann
  • IAS – a máquina de von Neumann (1952)
    • Memória: 4096 palavras de 40 bits
    • Cada palavra: 2 instruções de 20 bits ou um inteiro de 40 bits com sinal
    • Instruções: 8 bits para identificar tipo, 12 bits para especifica um das 4096 palavras de memória
    • Registrador Acumulador: dentro da Unidade Lógica e Aritmética
a primeira gera o v lvulas 1945 1955
A Primeira Geração: Válvulas (1945 – 1955)
  • IBM, 1953: 701
    • 2048 palavras de 36 bits
    • Início da atuação da IBM no mercado de computadores
    • Primeiro de uma série de máquinas científicas que passaram a dominar o setor na próxima década
outros computadores da poca
Organização Estruturada de ComputadoresOutros computadores da época
  • EDSAC, 1949
  • UNIVAC, 1951
  • Whirlwind, 1951
  • MANIAC, 1952
segunda gera o transistor 1955 1965
Organização Estruturada de ComputadoresSegunda geração: transistor (1955-1965)
  • Menos falhas, menor espaço
  • DEC PDP-1
  • IBM 1401
  • CDC 6600
  • Burroughs 5000: programação em ALGOL

incluíram muitas características no hardware para facilitar tarefa do compilador

“software também é importante”

a segunda gera o transistores 1955 1965
A Segunda Geração: Transistores (1955 – 1965)
  • MIT, 1950´s: TX-0 – Transistorizes eXperimental Computer 0
    • 1º computador transistorizado
    • Depois veio o TX-2 que acabou nao dando em nada
    • Kenneth Olsen, um dos engenheiros, fundou a empresa Digital Equipment Corporation (DEC) em 1957
  • DEC, 1960: PDP-1
    • 4096 palavras de 18 bits
    • Podia executar 200 mil instruções por segundo: metade do desempenho do IBM 7090, o mais rápido na época
    • Porém o PDP1 custava 120 mil dólares, o 7090 custava milhões
    • DEC vendeu dezenas de PDP-1: nascia a indústria de minicomputadores
    • Visor e capacidade de plotar pontos na tela -> criação de videogames
a segunda gera o transistores 1955 196548
A Segunda Geração: Transistores (1955 – 1965)
  • IBM: computação científica
    • 7090, 7094 tempo de ciclo de 2 microssegundos
  • IBM, processamento comercial, periféricos
    • 1401: máquina pequena voltada para empresas
    • 1401: arquitetura complexa, sem registrador, palavra sem tamanho fixo
control data cdc 6600 1964
Organização Estruturada de Computadores
  • Projetista:

Seymour Cray

Control Data: CDC 6600, 1964
  • Primeiro “super-computador”
    • várias unidades de processamento
    • estrutura pipeline
    • múltiplas threads
    • Arquitetura estava décadas a frente do seu tempo
dec pdp 8 1965
Organização Estruturada de ComputadoresDEC PDP-8, 1965
  • Mini-computador com barramento padrão
    • Inovação: barramento único (omnibus) conectando cpu, memória, console, E/S
  • Berço do Unix (Bell Labs)
terceira gera o cis 1965 1980
Organização Estruturada de ComputadoresTerceira geração: CIs (1965-1980)
  • Invenção do circuito integrado por Robert Noyce em 1958:
    • dezenas de transistores em um único chip
  • Maior integração permitiu reduções significativas de tamanho
ibm system 360
OrganizaçãoEstruturada de ComputadoresIBM System/360
  • Arquitetura de máquina comum a vários modelos
    • Família de máquinas
      • compatibilidade
    • multiprogramação
    • emulava 1401 e 7090 (máquinas virtuais)
    • Microprogramado
      • Um microprograma para cada máquina alvo
    • Espaço de endereçamento:
      • 224 bytes: parecia muito no início mas gerou problemas de compatibilidade na década de 80 (memória insuficiente)
dec pdp 11
Organização Estruturada de ComputadoresDEC PDP-11
  • Bastante popular em universidades
  • Ligado à difusão do Unix
  • Instruções complexas
  • Seguido pela linha VAX
quarta gera o vlsi 1980
Organização Estruturada de ComputadoresQuarta geração: VLSI (1980-?)
  • Integração em Escala Muito Grande
  • Computador em um chip (4004)
  • Explosão dos computadores pessoais
    • Kit com chip Intel 8080 x Apple
  • IBM decide entrar no mercado de computadores pessoais
    • IBM Personal Computer construído com peças do mercado (Intel 8080): grande popularidade
    • Sistemas operacional MS-DOC da Microsoft
    • Projeto aberto: vários clones, assim nascia a indústria de PCs
  • Apple Macintosh – interface gráfica
  • Microsoft Windows – rompimento com IBM
  • 1992: DEC lança o ALPHA de 64 bits
quarta gera o vlsi 198055
Organização Estruturada de ComputadoresQuarta geração: VLSI (1980-?)
  • Era dos antagonismos:
    • IBM PC x Macintosh
    • IBM PC x Workstations
    • RISC x CISC
    • DOS/Win x Unix
    • Microsoft x o resto
quinta gera o computadores invis veis
Organização Estruturada de ComputadoresQuinta geração – computadores invisíveis?
  • A Internet está presente em todo lugar
  • Processadores estão cada vez menores
  • Podem ser embutidos em quase tudo
    • PDAs
    • Celulares
    • Eletro-eletrônicos
    • Máquinas (automóveis)
    • Sensores
    • RFIDs
  • A idéia existe há anos, mas “a hora é agora”
tend ncias fundamentais lei de nathan
Organização Estruturada de ComputadoresTendências fundamentais: “Lei” de Nathan
  • Software é um gás: ele se expande até ocupar todo o recipiente que o contém
      • Exemplo clássico: Win*
espectro dos computadores atuais
Organização Estruturada de Computadores

Tipo

Preço

Aplicação

Computador descartável

1

Cartões musicais

Computador embutido

10

Relógios, carros, eletro-eletrônicos

Computador de jogos

100

Jogos (vídeo-games simples)

Computador pessoal

1K

Estações de trabalho

Servidor

10K

Servidores de rede

Clusters de estações

100K

Supercomputadores departamentais

Mainframe

1M

Processamento de grande volume de dados

Supercomputadores

10M

Previsão do tempo, armas nucleares

Espectro dos computadores atuais
exemplos de fam lias de computadores
Organização Estruturada de ComputadoresExemplos de famílias de computadores
  • Pentium 4 da Intel
  • UltraSPARC III da Sun Microsystems
  • O chip 8051 da Intel, para sistemas embutidos
fam lia de computadores intel67
Organização Estruturada de ComputadoresFamília de computadores Intel

Chip Pentium 4.

Direitos de reprodução da Intel Corporation, 2003, utilização permitida.

fam lia de computadores sparc
Organização Estruturada de ComputadoresFamília de computadores Sparc
  • Estações de trabalho pessoais Unix
  • Sun computers (Stanford University Network)
    • “The Network is the Computer”
  • SPARC: Scalable Processor Architecture
    • Apenas definiu a arquitetura, diversos fabricantes fizeram suas implementações
  • Exemplo clássico de processador RISC
    • Posteriormente o conjunto de instruções foi extendido
fam lia mcs 51
Organização Estruturada de ComputadoresFamília MCS-51
  • “Um computador em um chip”
    • CPU 8 bits
    • Memória ROM
    • Memória RAM
    • UART (serial)
    • Temporizadores
    • Saídas de controle (binárias ou analógicas)
pr ximo cap tulo
Organização Estruturada de ComputadoresPróximo capítulo
  • Introdução aos componentes básicos da arquitetura
    • processador
    • memória
    • dispositivos de entrada e saída
  • Princípios de projeto dos vários componentes