visão geral e e/s arquitetura de computadores. 2 roteiro sistemas de computação sistemas de...
TRANSCRIPT
Visão geral e E/SVisão geral e E/SArquitetura de ComputadoresArquitetura de Computadores
2
RoteiroRoteiro Sistemas de ComputaçãoSistemas de Computação HardwareHardware
Sistema CentralSistema Central PeriféricosPeriféricos
3
HardwareHardware
Memória Auxiliar
Sistema Central
Unidade de SaídaUnidade de Entrada
Periférico Periférico
4
PeriféricosPeriféricos Comunicação entre a máquina e o Comunicação entre a máquina e o
mundo exteriormundo exterior Unidades de EntradaUnidades de Entrada
Unidades de SaídaUnidades de Saída
5
Dispositivos de EntradaDispositivos de Entrada Convertem dados em sinais Convertem dados em sinais
utilizáveis pelo computadorutilizáveis pelo computador TecladoTeclado Mesa DigitalizadoraMesa Digitalizadora Tela sensível ao toqueTela sensível ao toque Caneta LuminosaCaneta Luminosa JoystickJoystick MouseMouse
6
Dipositivos de SaídaDipositivos de Saída Dispositivos de saída convertem sinais Dispositivos de saída convertem sinais
digitais armazenados internamente digitais armazenados internamente para formas úteis externamente;para formas úteis externamente;
A informação pode sair do sistema em A informação pode sair do sistema em diferentes formas básicas e suas diferentes formas básicas e suas combinações:combinações: TextoTexto ImagemImagem SomSom Sinais Digitais ou AnalógicosSinais Digitais ou Analógicos
7
Dispositivos de Entrada e Dispositivos de Entrada e SaídaSaída
Funcionam tanto como dispositivos Funcionam tanto como dispositivos de entrada como de saída:de entrada como de saída: Disco RígidoDisco Rígido Tela sensível ao toqueTela sensível ao toque Joystick Joystick Force FeedbackForce Feedback
8
Dispositivos de EntradaDispositivos de Entrada TecladoTeclado Caneta LuminosaCaneta Luminosa
Identificação de elementos da telaIdentificação de elementos da tela MouseMouse TrackballTrackball TouchpadTouchpad
9
Dispositivos de EntradaDispositivos de Entrada JoystickJoystick ScannerScanner
Mesa / MãoMesa / Mão TridimensionalTridimensional OCROCR
10
Dispositivos de EntradaDispositivos de Entrada Digitalizador de vídeoDigitalizador de vídeo Digitalizador espacialDigitalizador espacial Painel ou mesa sensível ao toque - Painel ou mesa sensível ao toque -
touch panel touch panel Mesa digitalizadoraMesa digitalizadora
11
Dispositivos de EntradaDispositivos de Entrada Luva eletrônica Luva eletrônica
Data GloveData Glove Luva com esqueletos externosLuva com esqueletos externos
Data suit Data suit Leitora de código de barrasLeitora de código de barras
12
Dispositivos de EntradaDispositivos de Entrada Dispositivos de Dispositivos de
rastreamento - rastreamento - tracking devices tracking devices
Câmaras digitaisCâmaras digitais
13
Dispositivos de SaídaDispositivos de Saída MonitoresMonitores Projetores DigitaisProjetores Digitais
14
Dispositivos de SaídaDispositivos de Saída Traçadores Traçadores
gráficos ou gráficos ou PlottersPlotters
OffsetOffset Digitais Digitais
15
Dispositivos de SaídaDispositivos de Saída ImpressorasImpressoras
MatriciaisMatriciais Jato de TintaJato de Tinta LaserLaser Transferência TérmicaTransferência Térmica
Registradores fotográficosRegistradores fotográficos
16
Dispositivos de SaídaDispositivos de Saída Óculos Óculos
EstereoscópicosEstereoscópicos Óculos com lentes Óculos com lentes
de cristal líquido de cristal líquido capazes de capazes de bloquear a visão bloquear a visão quando necessárioquando necessário
17
Dispositivos de SaídaDispositivos de Saída Head Mounted Head Mounted
Displays - HMDDisplays - HMD Duas pequenas Duas pequenas
telastelas Fone de ouvidoFone de ouvido
Dispositivos Dispositivos Geradores de Geradores de Sensação de Tato e Sensação de Tato e de Força (haptic de Força (haptic displays)displays)
18
Dispositivos de Entrada e Dispositivos de Entrada e SaídaSaída
Monitores de toque (Monitores de toque (touchscreentouchscreen)) Joystick Force FeedbackJoystick Force Feedback
19
Dispositivos de Entrada e Dispositivos de Entrada e SaídaSaída
Unidade de Disco MagnéticoUnidade de Disco Magnético Unidade de Disco ÓticoUnidade de Disco Ótico ModemModem Unidade de Fita MagnéticaUnidade de Fita Magnética
20
Características do Características do ComputadorComputador
Alta velocidade de processamentoAlta velocidade de processamento Alta capacidade de Alta capacidade de
armazenamentoarmazenamento Possibilidade de replicaçãoPossibilidade de replicação Processamento ininterruptoProcessamento ininterrupto ProgramávelProgramável
21
Benefícios trazidosBenefícios trazidospelo computadorpelo computador
Confiabilidade e ExatidãoConfiabilidade e Exatidão Precisão no controle de processosPrecisão no controle de processos Aumento da produtividadeAumento da produtividade Análise de grandes quantidades de Análise de grandes quantidades de
informaçãoinformação Auxílio à tomada de decisõesAuxílio à tomada de decisões Agilidade nas operaçõesAgilidade nas operações Redução da burocraciaRedução da burocracia
22
DesvantagensDesvantagens Limitado ao que está programadoLimitado ao que está programado Sem criatividadeSem criatividade Difícil tratamento da ambigüidadeDifícil tratamento da ambigüidade ObsolescênciaObsolescência DependênciaDependência
23
O que é um O que é um Computador?Computador?
24
O que é um O que é um Computador?Computador?
25
O que é um O que é um Computador?Computador?
26
O que é um O que é um Computador?Computador?
27
Tipos de computadoresTipos de computadores Computadores pessoais (Computadores pessoais (desktopdesktop)) Computadores portáteis (Computadores portáteis (notebooksnotebooks)) Computadores manuais (Computadores manuais (handheldhandheld)) ServidoresServidores MainframesMainframes SupercomputadoresSupercomputadores
28
Computadores Pessoais Computadores Pessoais (PC)(PC)
Computadores de Mesa (desktop):Computadores de Mesa (desktop): Também conhecidos como PCs, Também conhecidos como PCs,
microcomputadores, ou computadores domésticos.microcomputadores, ou computadores domésticos. Terminal de Rede:Terminal de Rede:
Unidade central de processamento e memória Unidade central de processamento e memória mínima.mínima.
Projetado para ser usado em uma rede.Projetado para ser usado em uma rede. Às vezes chamado de cliente magro (thin client)Às vezes chamado de cliente magro (thin client) Realizam a interface entre o usuário e um servidorRealizam a interface entre o usuário e um servidor
29
Computadores PortáteisComputadores Portáteis Computadores pequenos e Computadores pequenos e
leves – leves – notebooks, notebooks, netbooksnetbooks Suas capacidades se Suas capacidades se
comparam às dos comparam às dos computadores de mesa:computadores de mesa: Processamento e memória Processamento e memória
similares.similares. Disco rígido, CD/DVDDisco rígido, CD/DVD
Capacidade de conexão em Capacidade de conexão em rede cabeada e sem fiorede cabeada e sem fio
30
Computadores Manuais – Computadores Manuais – Handheld, PDA Handheld, PDA
( SMARTPHONES)( SMARTPHONES) ExemplosExemplos
PalmPalm Pocket PCPocket PC BlackBerryBlackBerry SmartphonesSmartphones
UsosUsos Agenda de compromissos, contatos, tarefasAgenda de compromissos, contatos, tarefas Rodam versões reduzidas de software: Rodam versões reduzidas de software:
processador de texto, planilhas eletrônicas, processador de texto, planilhas eletrônicas, e-mail, webe-mail, web
Acesso sem fio (Wi-Fi ou celular) à InternetAcesso sem fio (Wi-Fi ou celular) à Internet
31
ServidoresServidores Computadores multiusuário projetados Computadores multiusuário projetados
para suprir as necessidades de para suprir as necessidades de organizações de porte médio ou organizações de porte médio ou departamentosdepartamentos
Configurados como servidoresConfigurados como servidores Centenas ou milhares de usuários conectados.Centenas ou milhares de usuários conectados. Suportam bancos de dados, sistemas integrados Suportam bancos de dados, sistemas integrados
de gestão (controle de estoques, pedidos, de gestão (controle de estoques, pedidos, faturamento) e outras aplicações empresariaisfaturamento) e outras aplicações empresariais
Suportam serviços de rede e InternetSuportam serviços de rede e Internet Armazenam arquivos de uso compartilhadoArmazenam arquivos de uso compartilhado
32
MainframesMainframes Computadores muito grandes e Computadores muito grandes e
potentes:potentes: Capazes de processar bilhões de instruçõesCapazes de processar bilhões de instruções por segundo.por segundo. Grande capacidade de armazenamento de dadosGrande capacidade de armazenamento de dados
Freqüentemente usados para aplicações Freqüentemente usados para aplicações com milhares de usuários:com milhares de usuários: Sistemas de reservas de passagens aéreas, hotéisSistemas de reservas de passagens aéreas, hotéis Sistemas financeiros (bancos, seguradoras, financeiras) Sistemas financeiros (bancos, seguradoras, financeiras) Servidores de bancos de dados corporativosServidores de bancos de dados corporativos
33
SupercomputadoresSupercomputadores Os computadores mais Os computadores mais
rápidos e mais poderosos:rápidos e mais poderosos: Capazes de processar Capazes de processar
trilhões de instruções trilhões de instruções por segundo.por segundo.
Usados para aplicações Usados para aplicações muito sofisticadas que muito sofisticadas que requerem gigantescas requerem gigantescas manipulações de dados:manipulações de dados: Previsão do tempo.Previsão do tempo. Simulações e cálculos Simulações e cálculos
de alta precisão.de alta precisão. Efeitos especiais para Efeitos especiais para
cinema.cinema.
34
O que um computador O que um computador faz?faz?
Entradas Processamento Saídas
DadosDadosDadosDados
...
Operações(Programa)
Informação!!!
3535
Terminologia Dado
Informação que será trabalhada durante o processamento Exemplos
10 (idade), 12 x 8 (pressão arterial), 1.99 (altura em metros), Maria (nome)
Instrução Operação elementar que o computador tem a
capacidade de processar Trabalha com os dados Ordens executadas pelo computador
Exemplos instruções para entrada e saída (E/S) de dados instrução de movimentação de dados
(transferência) instruções aritméticas instrução de comparação etc
36
Programa roteiro que orienta o computador, mostrando-lhe a seqüência
de operações necessárias para executar uma determinada tarefa
seqüência de instruções que dirigem a CPU na execução de alguma tarefa
composto por uma série de comandos ou instruções Hardware
conjunto de componentes mecânicos, elétricos e eletrônicos com os quais são construídos os computadores e equipamentos periféricos
Software conjunto de programas e procedimentos que permitem
usufruir da capacidade de processamento fornecida pelo hardware
Terminologia
37
Componentes de um Componentes de um Sistema ComputacionalSistema Computacional
HardwareHardware
SoftwareSoftware
UsuárioUsuário
38
Software Software Software aplicativoSoftware aplicativo
aplicações criadas para solucionar problemas aplicações criadas para solucionar problemas específicosespecíficos
ExemplosExemplos contabilidade, folha de pagamento, correção de provascontabilidade, folha de pagamento, correção de provas
Software básicoSoftware básicoconjunto de softwares que permite ao usuário criar, conjunto de softwares que permite ao usuário criar,
depurar e modificar as aplicações criadas por eledepurar e modificar as aplicações criadas por ele sistema operacional, linguagens de programação, utilitáriossistema operacional, linguagens de programação, utilitários
Sistema operacional Sistema operacional (ex: Windows, Linux, DOS, ...)(ex: Windows, Linux, DOS, ...) Gerência de memóriaGerência de memória Gerência de processadorGerência de processador Gerência de arquivosGerência de arquivos Gerência de dispositivos de E/SGerência de dispositivos de E/S
39
Software básico Software básico Linguagens de programaçãoLinguagens de programação
conjunto de convenções e regras que especificam como conjunto de convenções e regras que especificam como instruir o computador a executar determinadas tarefasinstruir o computador a executar determinadas tarefas
serve como meio de comunicação entre o indivíduo que serve como meio de comunicação entre o indivíduo que deseja resolver um determinado problema e o deseja resolver um determinado problema e o computador computador
Gerações de linguagensGerações de linguagens 1ª geração:1ª geração: linguagens em nível de máquinalinguagens em nível de máquina 2ª geração:2ª geração: linguagens de montagem (linguagens de montagem (AssemblyAssembly)) 3ª geração:3ª geração: linguagens orientadas ao usuáriolinguagens orientadas ao usuário 4ª geração:4ª geração: linguagens orientadas à aplicaçãolinguagens orientadas à aplicação 5ª geração:5ª geração: linguagens de conhecimentolinguagens de conhecimento
40
Software básicoSoftware básico 1ª Geração: Linguagens em nível de máquina1ª Geração: Linguagens em nível de máquina
Instrução 0010 0001 0110 1100Instrução 0010 0001 0110 1100 realiza a soma (código de operação 0010) do dado armazenado no realiza a soma (código de operação 0010) do dado armazenado no
registrador 0001, com o dado armazenado na posição de memória 108 registrador 0001, com o dado armazenado na posição de memória 108 (0110 1100)(0110 1100)
Programa: seqüência de zeros e unsPrograma: seqüência de zeros e uns programação trabalhosa, cansativa e fortemente sujeita a errosprogramação trabalhosa, cansativa e fortemente sujeita a erros
2ª geração: Linguagens de Montagem (2ª geração: Linguagens de Montagem (AssemblyAssembly)) minimizar as dificuldades da programação em notação minimizar as dificuldades da programação em notação
bináriabinária Códigos de operação e endereços binários foram Códigos de operação e endereços binários foram
substituídos por mnemônicossubstituídos por mnemônicos ADD R1, TOTALADD R1, TOTAL R1 representa o registrador 1 e TOTAL é o nome atribuído ao endereço R1 representa o registrador 1 e TOTAL é o nome atribuído ao endereço
de memória 108de memória 108 processamento requer tradução para linguagem de máquinaprocessamento requer tradução para linguagem de máquina
41
Software básicoSoftware básico 3ª geração: Linguagens Orientadas ao Usuário3ª geração: Linguagens Orientadas ao Usuário
Surgiram nas décadas de 50 e 60:Surgiram nas décadas de 50 e 60: FORTRAN, COBOL, PL/1, Pascal, Basic, ...FORTRAN, COBOL, PL/1, Pascal, Basic, ...
Linguagem C Linguagem C ((criada em 1972, no AT&T Bell Labs, para criada em 1972, no AT&T Bell Labs, para desenvolver o sistema operacional UNIX desenvolver o sistema operacional UNIX ))
if (a>b) printf (“O valor de A eh maior que o valor de B”);if (a>b) printf (“O valor de A eh maior que o valor de B”);else printf (“O valor de A eh menor que o valor de B”);else printf (“O valor de A eh menor que o valor de B”);
4ª geração: Linguagens Orientadas à Aplicação4ª geração: Linguagens Orientadas à Aplicação apressar o processo de desenvolvimento de aplicaçõesapressar o processo de desenvolvimento de aplicações gerar código sem erros a partir de requisitos de gerar código sem erros a partir de requisitos de
expressões de alto nívelexpressões de alto nível tornar fácil o uso de linguagens, tal que, usuários tornar fácil o uso de linguagens, tal que, usuários
finais possam resolver seus problemas finais possam resolver seus problemas computacionais sem intermediárioscomputacionais sem intermediários
SQLSQL select nome from alunos where idCurso=“C01”select nome from alunos where idCurso=“C01”
42
Software básicoSoftware básico 5ª geração: Linguagens de Conhecimento5ª geração: Linguagens de Conhecimento
mecanismos da área de inteligência artificialmecanismos da área de inteligência artificial Sistemas especialistas, processadores de língua natural e Sistemas especialistas, processadores de língua natural e
sistemas com bases de conhecimentosistemas com bases de conhecimento Um sistema de 5ª geração armazena conhecimento Um sistema de 5ª geração armazena conhecimento
complexo de modo que a máquina pode obter complexo de modo que a máquina pode obter inferências a partir da informação codificadainferências a partir da informação codificada
Ex: PROLOGEx: PROLOG
Níveis de linguagemNíveis de linguagem linguagens de baixo nívellinguagens de baixo nível
primeira e segunda geraçãoprimeira e segunda geração linguagens de alto nívellinguagens de alto nível
terceira geração em dianteterceira geração em diante
43
Tradutores de Tradutores de linguagens de linguagens de programação programação
D A T A D E N A S C I M E N T O
L I N G U A G E M M O N T A D O R A ( A S S E M B L Y )
L I N G U A G E N S D E A L T O N I V E L
I n t e r p r e t a d o r C o m p i l a d o r
L I N G U A G E M D E M A Q U I N A
T r a d u t o r e s :
L I N G U A G E N S
D E
B A I X O
N I V E L
T r a d u t o r : M o n t a d o r
44
Tradutores de Tradutores de linguagens de linguagens de programaçãoprogramação TradutorTradutor
programa que recebe como programa que recebe como entradaentrada um um programaprograma escrito escrito em uma linguagem de programação (dita linguagem fonte) e em uma linguagem de programação (dita linguagem fonte) e produz como produz como resultadoresultado as instruções deste programa as instruções deste programa traduzidas para linguagem de traduzidas para linguagem de máquinamáquina (chamada linguagem (chamada linguagem objeto).objeto).
Se a linguagem do programa fonte é uma linguagem de Se a linguagem do programa fonte é uma linguagem de montagem (montagem (AssemblyAssembly) o tradutor é chamado de Montador ) o tradutor é chamado de Montador (Assembler)(Assembler)
Tradutores que traduzem os programas escritos em Tradutores que traduzem os programas escritos em linguagem de alto nível:linguagem de alto nível: compiladorescompiladores e e interpretadoresinterpretadores
45
Tradutores de Tradutores de linguagens de linguagens de programaçãoprogramação CompiladorCompilador
traduz um programa escrito em linguagem de alto níveltraduz um programa escrito em linguagem de alto nível produz um programa em linguagem objeto (linguagem produz um programa em linguagem objeto (linguagem
executável, ou seja, linguagem de máquina)executável, ou seja, linguagem de máquina) pode ser executado uma ou mais vezes no futuropode ser executado uma ou mais vezes no futuro enquanto o código fonte do programa não for alterado, ele poderá ser enquanto o código fonte do programa não for alterado, ele poderá ser
executado sucessivas vezes, sem necessidade de nova compilaçãoexecutado sucessivas vezes, sem necessidade de nova compilação Interpretador Interpretador
traduz um programa escrito em linguagem fonte, instrução a traduz um programa escrito em linguagem fonte, instrução a instrução, enquanto ele vai sendo executadoinstrução, enquanto ele vai sendo executado
cada vez que um programa interpretado tiver que ser re-cada vez que um programa interpretado tiver que ser re-executado, todo o processo de interpretação deverá ser refeito, executado, todo o processo de interpretação deverá ser refeito, independentemente de ter havido ou não modificações no código independentemente de ter havido ou não modificações no código fonte do programa desde sua última execuçãofonte do programa desde sua última execução
Programas compilados tendem a ser executados mais Programas compilados tendem a ser executados mais rapidamente que seus correspondentes interpretadosrapidamente que seus correspondentes interpretados
46
Tradutores de Tradutores de linguagens de linguagens de programaçãoprogramação
C O M P I L A D O R
I N T E R P R E T A D O R
L I N G U A G E M D E M A Q U I N A
E X E C U C A O D E T O D O O P R O G R A M A
E X E C U T A A I N S T R U C A O E V O L T A
L I N G U A G E M
D E A L T O N I V E L
O P E R A C A O G E R E N C I A D A P E L O S I S T E M A O P E R A C I O N A L
P R O G R A M A F O N T E
T R A D U T O R P R O G R A M A O B J E T O
E X E C U C A O
47
Software básicoSoftware básico UtilitáriosUtilitários
SoftwareSoftwares de apoio à solução de s de apoio à solução de problemas de disco, memória, etcproblemas de disco, memória, etc
Desfragmentador, limpeza de disco...Desfragmentador, limpeza de disco... Compactadores e descompactadores Compactadores e descompactadores
de arquivos, programas anti-virusde arquivos, programas anti-virus VírusVírus
Programas capazes de se instalar de forma Programas capazes de se instalar de forma clandestina nos sistemasclandestina nos sistemas
Podem adotar procedimentos perturbadores Podem adotar procedimentos perturbadores fazer uma bolinha pular na tela, ...fazer uma bolinha pular na tela, ... declaradamente destrutivos (apagar informações)declaradamente destrutivos (apagar informações)
48
Links InteressantesLinks Interessantes How Stuff WorksHow Stuff Works
http://computer.howstuffworks.com/http://computer.howstuffworks.com/virtual-memory.htmvirtual-memory.htm
http://computer.howstuffworks.com/http://computer.howstuffworks.com/rom.htmrom.htm
http://computer.howstuffworks.com/http://computer.howstuffworks.com/computer-memory.htmcomputer-memory.htm