Buscar

Organização dos Ambientes Operacional - 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 49 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1/11
Sistema operativo
pt.wikipedia.org/wiki/Sistema_operativo
Sistema (em inglês: Operating System - OS) é um programa ou um conjunto de
programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe
atenção do processador, gerenciar memória, criar um sistema de arquivos, etc.),
fornecendo uma interface entre o computador e o usuário. Embora possa ser executado
imediatamente após a máquina ser ligada, a maioria dos computadores pessoais de hoje o
executa através de outro programa armazenado em uma memória não-volátil ROM
chamado BIOS num processo chamado "bootstrapping", conceito em inglês usado para
designar processos autossustentáveis, ou seja, capazes de prosseguirem sem ajuda
externa. Após executar testes e iniciar os componentes da máquina (monitores, discos,
etc), o BIOS procura pelo sistema operacional em alguma unidade de armazenamento,
geralmente o Disco Rígido, e a partir daí, o sistema operacional "toma" o controle da
máquina. O sistema operacional reveza sua execução com a de outros programas, como se
estivesse vigiando, controlando e orquestrando todo o processo computacional.
Segundo Tanenbaum, pela perspectiva do usuário ou programador, existem dois modos
distintos de conceituar um sistema operacional:
numa visão de baixo para cima (bottom-up): é um gerenciador de recursos, i.e., que
controla as aplicações (processos) a executar, como, quando e com quais recursos
(memória, disco, periféricos).
Um sistema operacional é projetado para ocultar as particularidades de hardware (ditas
"de baixo nível") e, com sua atuação, criar uma máquina abstrata que fornece às
aplicações serviços compreensíveis ao usuário (ditas "de alto nível").
1 História
2 Visão geral
3 Sistemas operacionais modernos
4 Estrutura em camada
10 Referências
11 Referências bibliográficas
12 Ver também
História
Na primeira geração (aproximadamente 1945-1955), os computadores eram tão grandes
que ocupavam salas imensas, ou mesmo andares inteiros. Foram basicamente construídos
com válvulas e painéis, e os sistemas operacionais "não existiam". Os programadores, que
também eram os operadores, controlavam o computador por meio de chaves, fios e luzes
de aviso.
[1]
[2]
https://pt.wikipedia.org/wiki/Sistema_operativo
https://pt.wikipedia.org/wiki/L%C3%ADngua_inglesa
https://pt.wikipedia.org/wiki/Programa_de_computador
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento
https://pt.wikipedia.org/wiki/Sistema_de_arquivos
https://pt.wikipedia.org/wiki/Interface
https://pt.wikipedia.org/wiki/Computador
https://pt.wikipedia.org/wiki/Usu%C3%A1rio
https://pt.wikipedia.org/wiki/ROM
https://pt.wikipedia.org/wiki/BIOS
https://pt.wikipedia.org/wiki/Bootstrapping_(estat%C3%ADstica)
https://pt.wikipedia.org/wiki/Processo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/%23Hist%C3%B3ria
https://pt.wikipedia.org/wiki/%23Vis%C3%A3o_geral
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#Sistemas_operacionais_modernos
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#Estrutura_em_camada
https://pt.wikipedia.org/wiki/%23Refer%C3%AAncias
https://pt.wikipedia.org/wiki/%23Refer%C3%AAncias_bibliogr%C3%A1ficas
https://pt.wikipedia.org/wiki/%23Ver_tamb%C3%A9m
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-1
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-2
andre
Realce
2/11
Sistema operacional em linha
de comando.
Nomes como Howard Aiken (Harvard), John von
Neumann (Instituto de Estudos Avançados de Princeton),
John Adam Presper Eckert Jr e William Mauchley
(Universidade da Pennsylvania) e Konrad Zuse
(Alemanha) formaram, com suas contribuições, a base
humana para o sucesso na construção dos computadores
primitivos. Na geração seguinte (aproximadamente 1955-
1965), foram criados os sistemas em lote (batch systems),
que permitiram melhor uso dos recursos computacionais.
A base do sistema operacional era um programa monitor,
usado para enfileirar tarefas (jobs). O usuário foi afastado
do computador; cada programa era escrito em cartões
perfurados, que por sua vez eram carregados, juntamente
com o respectivo compilador (normalmente Fortran ou
Cobol), por um operador, que por sua vez usava uma linguagem de controle chamada JCL
(job control language).
No início da computação os primeiros sistemas operacionais eram únicos, pois cada
mainframe vendido necessitava de um sistema operacional específico. Esse problema era
resultado de arquiteturas diferentes e da linguagem que cada máquina utilizava. Após
essa fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de
tarefas (jobs), pois os sistemas eram monousuários e tinham cartões perfurados como
entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para
trocar os cartões perfurados).
Diz-se que Alan Turing era um mestre nos primeiros Manchester Mark I, e ele já estava
derivando a concepção primitiva de um sistema operacional a partir dos princípios da
máquina de Turing universal.
Um dos primeiros sistemas operacionais de propósito geral foi o CTSS, desenvolvido no
MIT. Após o CTSS, o MIT, os laboratórios Bell da AT&T e a General Electric
desenvolveram o Multics, cujo objetivo era suportar centenas de usuários. Apesar do
fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de
sistemas operacionais. Um dos desenvolvedores do Multics, que trabalhava para a Bell,
Ken Thompson, começou a reescrever o Multics num conceito menos ambicioso, criando
o Unics (em 1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais
eram geralmente programados em assembly, até mesmo o Unix em seu início. Então,
Dennis Ritchie (também da Bell) criou a linguagem C a partir da linguagem B, que havia
sido criada por Thompson. Finalmente, Thompson e Ritchie reescreveram o Unix em C. O
Unix criou um ecossistema de versões, onde destacam-se: System V e derivados (HP-UX,
AIX); família BSD (FreeBSD, NetBSD, OpenBSD, etc.), Linux e até o Mac OS X (que
deriva do Mach e FreeBSD). O BSD foi lançado em 1977, sendo ele um sistema
operacional fortemente baseado no Unix, focado principalmente para a execução em
máquinas específicas de alto desempenho, como o famoso computador VAX, o qual foi
uma referência de hardware na época.
[3]
https://pt.wikipedia.org/wiki/Ficheiro:Bash_demo.png
https://pt.wikipedia.org/wiki/Fortran
https://pt.wikipedia.org/wiki/Cobol
https://pt.wikipedia.org/wiki/Mainframe
https://pt.wikipedia.org/wiki/Alan_Turing
https://pt.wikipedia.org/wiki/Manchester_Mark_I
https://pt.wikipedia.org/wiki/M%C3%A1quina_de_Turing_universal
https://pt.wikipedia.org/wiki/CTSS
https://pt.wikipedia.org/wiki/MIT
https://pt.wikipedia.org/wiki/Laborat%C3%B3rios_Bell
https://pt.wikipedia.org/wiki/AT%26T
https://pt.wikipedia.org/wiki/General_Electric
https://pt.wikipedia.org/wiki/Multics
https://pt.wikipedia.org/wiki/Ken_Thompson
https://pt.wikipedia.org/wiki/Unix
https://pt.wikipedia.org/wiki/Dennis_Ritchie
https://pt.wikipedia.org/wiki/Linguagem_C
https://pt.wikipedia.org/wiki/Linguagem_B
https://pt.wikipedia.org/wiki/Berkeley_Software_Distribution
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/NetBSD
https://pt.wikipedia.org/wiki/OpenBSD
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/Mac_OS_X
https://pt.wikipedia.org/wiki/Mach_(n%C3%BAcleo)
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-google4-3
3/11
O OS/360 foi colocado na
estrutura principal de todos os
computadores IBM no início de
1964, incluindo os
computadores que ajudaram a
NASA a colocar o homem na
lua.
Durante a década de 70, o Unix foi distribuído gratuitamente (incluindo seu código fonte)
para universidades e órgãos governamentais norte-americanos, o que conferiu muita
popularidade a este sistema. Sua interface era totalmente em modo texto, sem interface
gráfica. Quando começaram a apareceros computadores pessoais, houve a necessidade de
um sistema operacional de utilização mais fácil. Em 1980, William (Bill) Gates e seu
colega de faculdade, Paul Allen, fundadores da Microsoft, compram o sistema QDOS
("Quick and Dirty Operating System") de Tim Paterson por US$ 50 mil batizam-no de
MS-DOS (Microsoft Disk Operating System). O DOS original, de desenvolvimento da
IBM, foi o sistema operativo que a IBM apresentou aquando do lançamento do primeiro
PC, vendeu muitas cópias, como o sistema operativo nos computadores pessoais
desenvolvidos pela IBM. IBM convidou a Microsoft para uma parceria para o
desenvolvimento da versão 2 do IBM OS/2, um sistema operacional. Após o fim da breve
parceria a IBM seguiu sozinha com o desenvolvimento do OS/2 a que deu o nome de
OS/2 Warp, concorrendo diretamente com o MS Windows 95.
No começo da década de 1990, um estudante de computação finlandês postou um
comentário numa lista de discussão da Usenet dizendo que estava desenvolvendo um
núcleo de sistema operacional e perguntou se alguém gostaria de auxiliá-lo na tarefa. Este
estudante chamava-se Linus Torvalds e o primeiro passo em direção ao tão conhecido
Linux foi dado naquele momento.
Existem vários sistemas operativos; entre eles, os mais utilizados no dia a dia,
normalmente utilizados em computadores domésticos, são o Windows, Linux e macOS.
Um computador com o sistema operativo instalado
poderá não dar acesso a todo o seu conteúdo dependendo
do utilizador; isso, pois com um sistema operativo,
podemos estabelecer permissões a vários utilizadores que
trabalham com este.
Para isso existem dois tipos de contas que podem ser
criadas num sistema operativo, as contas de
Administrador e as contas limitadas.
A conta Administrador é uma conta que oferece todo o
acesso à máquina, desde a gestão de pastas, ficheiros e
software de trabalho ou entretenimento ao controle de
todo o seu Hardware instalado.
A conta Limitada é uma conta que não tem permissões
para aceder a algumas pastas ou instalar software que seja
instalado na raiz do sistema ou então que tenha ligação
com algum Hardware que altere o seu funcionamento
normal ou personalizado pelo Administrador. Para que
este tipo de conta possa ter acesso a outros conteúdos do
https://pt.wikipedia.org/wiki/Ficheiro:IBM360-65-1.corestore.jpg
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1970
https://pt.wikipedia.org/wiki/Computador_pessoal
https://pt.wikipedia.org/wiki/1980
https://pt.wikipedia.org/wiki/Bill_Gates
https://pt.wikipedia.org/wiki/Paul_Allen
https://pt.wikipedia.org/wiki/Microsoft
https://pt.wikipedia.org/wiki/QDOS
https://pt.wikipedia.org/wiki/Tim_Paterson
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/IBM_PC
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/Linus_Torvalds
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/MacOS
4/11
disco ou de software, o administrador poderá personalizar a conta oferecendo permissões
a algumas funções do sistema como também poderá retirar acessos a certas áreas do
sistema.
O sistema operativo funciona com a iniciação de processos que este irá precisar para
funcionar corretamente. Esses processos poderão ser ficheiros que necessitam de ser
frequentemente atualizados, ou ficheiros que processam dados úteis para o sistema.
Poderemos ter acesso a vários processos do sistema operativo a partir do gestor de
tarefas, onde se encontram todos os processos que estão em funcionamento desde o
arranque do sistema operativo até a sua utilização atual. Pode-se também visualizar a
utilização da memória por cada processo, no caso de o sistema operativo começar a
mostrar erros ou falhas de acesso a programas tornando-se lento, pode-se verificar no
gestor de tarefas qual dos processos estará bloqueado ou com elevado número de
processamento que está a afetar o funcionamento normal da memória.
Um sistema computacional moderno consiste em um ou mais processadores, memória
principal, discos, impressoras, teclado, mouse, monitor, interfaces de rede e outros
dispositivos de entrada e saída. Enfim, é um sistema complexo. Se cada programador de
aplicações tivesse de entender como tudo isso funciona em detalhes, nenhum código
chegaria a ser escrito. Além disso, gerenciar todos esses componentes e usá-los de
maneira otimizada é um trabalho extremamente difícil. Por isso, os computadores têm
um dispositivo de software denominado sistema operacional, cujo trabalho é fornecer aos
programas do usuário um modelo de computador melhor, mais simples e mais limpo e
lidar com o gerenciamento de todos os recursos mencionados.
Um dos conceitos mais fundamentais dos Sistemas Operacionais Modernos é a distinção
entre o programa e a atividade de executá-lo. O programa é apenas um conjunto estático
de diretrizes e sua execução é uma atividade dinâmica.
Outra das diferenças que podemos observar entre um sistema operacional e aplicações
convencionais é a forma com que suas rotinas são processadas em função do tempo. Um
sistema operacional não é executado de forma estruturada. Suas rotinas são executadas
concorrentemente em função de eventos assíncronos. Em outras palavras, eventos que
podem ocorrer a qualquer momento.
Ver artigo principal: Sistema Operacional em Camadas
A Estruturação em camadas é um modelo de Sistema Operacional que o divide em várias
camadas sobrepostas. Cada camada proporciona um conjunto de funções que pode ser
usado por outras camadas.
Uma das maiores vantagens desse modelo de camadas é isolar o sistema operacional,
facilitando sua alteração e depuração, além de criar uma hierarquia de níveis de modos,
protegendo as camadas mais internas.
O empilhamento de várias camadas de software faz com que cada pedido de uma
aplicação demore mais tempo para chegar até o dispositivo periférico ou recurso a ser
acessado, prejudicando o desempenho do sistema.
[4]
[5]
[6]
https://pt.wikipedia.org/wiki/Processo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Sistema_Operacional_em_Camadas
https://pt.wikipedia.org/wiki/Sistema_Operacional
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-4
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-5
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-ReferenceA-6
5/11
O primeiro servidor
para WWW rodou em
um NeXTSTEP baseado
no BSD.
Funcionamento
Um sistema operacional possui as seguintes funções:
O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o número
de processos em execução simultânea no computador é maior que o número de
processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre
vários processos é tão rápida que o usuário pensa que sua execução é simultânea.
São utilizados algoritmos de escalonamento para determinar qual processo será
executado em determinado momento e por quanto tempo.
Os processos podem comunicar-se, isto é conhecido como IPC (Inter-Process
Communication). Os mecanismos geralmente utilizados são:
pipes;
named pipes;
memória compartilhada;
soquetes (sockets);
trocas de mensagens.
O sistema operacional, normalmente, deve possibilitar o multiprocessamento (SMP ou
NUMA). Neste caso, processos diferentes e threads podem ser executados em diferentes
processadores. Para essa tarefa, ele deve ser reentrante e interrompível, o que significa
que pode ser interrompido no meio da execução de uma tarefa.
Gerenciamento de memória
Ver artigo principal: Gerenciamento de memória
O sistema operacional tem acesso completo à memória do sistema e deve permitir que os
processos dos usuários tenham acesso seguro à memória quando o requisitam.
Vários sistemas operacionais usam memória virtual, que possui 3
funções básicas:
1. Assegurar que cada processo tenha seu próprio espaço de
endereçamento, começando em zero, para evitar ou
resolver o problema de relocação (Tanenbaum, 1999);
2. Prover proteçãoda memória para impedir que um processo
utilize um endereço de memória que não lhe pertença;
3. Possibilitar que uma aplicação utilize mais memória do que
a fisicamente existente.
Swapping
Dentro de gerenciamento de memória, pode não ser possível manter todos os processos
em memória, muitas vezes por não existir memória suficiente para alocar aquele
processo. Para solucionar esse problema existe um mecanismo chamado swapping, onde
a gerência de memória reserva uma área do disco para o seu uso em determinadas
https://pt.wikipedia.org/wiki/Ficheiro:First_Web_Server.jpg
https://pt.wikipedia.org/wiki/World_Wide_Web
https://pt.wikipedia.org/wiki/Multitarefa
https://pt.wikipedia.org/wiki/Escalonamento_de_processos#Algoritmos_de_escalonamento
https://pt.wikipedia.org/wiki/Inter-Process_Communication
https://pt.wikipedia.org/wiki/Multiprocessamento
https://pt.wikipedia.org/wiki/Multiprocessamento_sim%C3%A9trico
https://pt.wikipedia.org/wiki/NUMA
https://pt.wikipedia.org/wiki/Thread_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Gerenciamento_de_mem%C3%B3ria
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual
https://pt.wikipedia.org/w/index.php?title=Swapping&action=edit&redlink=1
6/11
situações, e um processo é completamente copiado da memória para o disco; este
processo é retirado da fila do processador e mais tarde será novamente copiado para a
memória; Então, o processo ficará ativo na fila novamente. O resultado desse
revezamento no disco é que o sistema operacional consegue executar mais processos do
que caberia em um mesmo instante na memória. Swapping impõe aos programas um
grande custo em termos de tempo de execução, pois é necessário copiar todo o processo
para o disco e mais tarde copiar novamente todo o processo para a memória. Em sistemas
onde o usuário interage com o programa durante sua execução, o mecanismo de swapping
é utilizado em último caso, quando não se é possível manter todos os processos na
memória, visto que a queda no desempenho do sistema é imediatamente sentida pelo
usuário.
Gerenciamento de recursos
Uma das tarefas com extrema importância atribuída ao sistema operacional é o
gerenciamento de recursos, que tem a função de definir políticas para gerenciar o uso dos
recursos de hardware pelos aplicativos, resolvendo disputas e conflitos. Vários programas
de entrada de dados competem pela vez na CPU (Unidade Central de Processamento) e
demandam memória, espaço em disco e largura. O sistema operacional tem a função de
cuidar de cada aplicativo e para que os mesmos tenham recursos necessários para o
melhor funcionamento e gerencia a capacidade limitada do sistema para que possa
atender todas as necessidades de aplicativos e usuários.
Entrada e saída de dados
Sistemas operacionais controlam e gerenciam a entrada e saída (E/S) de dispositivos por
três razões. Primeiro, porque a maioria do hardware do dispositivo utiliza uma interface
de baixo nível, a interface do software é complexa. Em segundo lugar, porque um
dispositivo é um recurso compartilhado, um sistema operacional fornece acesso de acordo
com as políticas que tornam a partilha justa e segura. Em terceiro lugar, um sistema
operacional define uma interface de alto nível que esconde detalhes e permite que um
programador possa usar um conjunto coerente e uniforme das operações ao interagir com
os dispositivos.
O subsistema de E/S pode ser divididos em três peças conceituais:
1. Uma interface abstrata que consiste funções de E/S de alto nível que os processos
possam usar para executar I / O;
2. Um conjunto de dispositivos físicos;
3. Software de driver de dispositivo que conecta os dois.
Sistema de arquivos
A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do
hardware. Assim, os usuários necessitam de algum método para armazenar e recuperar
informações de modo permanente.
[7]
[8]
https://pt.wikipedia.org/wiki/Entrada/sa%C3%ADda
https://pt.wikipedia.org/wiki/Sistema_de_ficheiros
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-7
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-8
7/11
Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo
periférico não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais processos.
Tipos de sistemas
Sistema Mono-programado
Também chamados como sistema mono-tarefa, o sistema operacional mono-programado
possui apenas um processador, realiza alocação de memória para somente um processo e
um usuário por vez. Apresenta também uma CPU ociosa durante E/S e sua
implementação é feita de forma simples.
Sistema em Lote
O sistema em lote é também um sistema monoprocessado e utiliza a linguagem de
Controle de Tarefas (JLC). Caracteriza-se por ter programas armazenados em disco ou
fita, que uma vez iniciados, exigem pouca ou nenhuma interação do usuário, processando
de forma sequencial e contínua até o fim do job, quando então é devolvido o resultado
final do processamento.
Exemplos de JLC:
// $JOB 
// $FORTRAN 
Programa escrito em FORTRAN
// $LOAD 
// $RUN 
Dados de entrada do programa
// $END 
Sistema multiprocessadores
Os sistemas multiprocessadores – dois ou mais processadores trabalhando juntos –
podem ser divididos em duas partes:
Sistemas fortemente acoplados;
Sistemas fracamente acoplados.
Dentro de sistemas fortemente acoplados – memória única compartilhada por dois ou
mais processadores, tendo um mesmo sistema operacional gerenciando todos os
processadores –, encontramos mais duas divisões:
Sistemas simétricos – onde os processadores têm a mesma função;
Sistemas assimétricos – onde um processador (mestre) pode executar serviços do
sistema operacional.
https://pt.wikipedia.org/wiki/Bytes
8/11
Dentro de sistemas fracamente acoplados – mais de dois sistemas operacionais que são
ligados por canal de comunicação, tendo hardware e sistemas operacionais independentes
– temos:
Sistemas operacionais de rede – cada sistema, também chamado host ou nó, possui
seus próprios recursos de hardware, como processadores, memória e dispositivos de
entrada e saída. Os nós são totalmente independentes dos terminais, sendo
interconectados por uma rede de comunicação de dados, formando uma rede de
computadores. Os sistemas operacionais de rede são utilizados tanto em redes locais
(Local Area Network - LAN), como em redes distribuídas (Wide Area Network -
WAN). A ligação entre os diversos nós é feita por uma interface de rede que permite
o acesso aos demais componentes da rede. Não existe um limite máximo para o
número de nós que podem fazer parte de uma rede de computadores. Cada nó é
totalmente independente dos demais, possuindo seu próprio sistema operacional e
espaço de endereçamento. Os sistemas operacionais podem ser heterogêneos. Na
Internet, cada host pode estar processando um sistema operacional diferente, mas
todos estão se comunicando através do mesmo protocolo de rede, no caso, os
protocolos da família TCP/IP (Transmission Control Protocol/Internet Protocol).
Sistemas operacionais distribuídos – computadores independentes que parecem um
único computador aos olhos do usuário; Trata-se de um conjunto de processos que
são executados de forma concorrente, cada um dos quais acessando um subconjunto
de recursos do sistema. E essa comunicação é feita em forma de envio de
mensagens.
Sistema Multi-programado para Tempo Real
Os sistemas multi-programado para tempo real além de serem sistemas
multiprogramados, possuem um tempo de resposta rígido e por isso são muito utilizados
no controle de processos. Têm menos time-slice e mais prioridade, ademais, seus
processos são ativados por sensores.
A aplicação deste tipo de sistema está em máquinas de usinas, refinarias, tráfego aéreo,
etc..
Interface de uso
Os sistemas operacionais fornecem abstração de hardware para que seus recursos
possam ser usados de maneira correta e padronizada, mas para ser possível operar um
computador,é necessário fornecer também uma interface para que o usuário possa
desfrutar dos recursos do sistema. Atualmente (2009) as principais interfaces de uso são
as seguintes:
A interface de terminal, também chamada de interface de linha de comando ou "CLI"
(Command Line Interface) funciona exclusivamente com o teclado. Os comandos são
digitados a partir de um prompt e são interpretados por um interpretador de comandos,
conhecidos também por shells, bastante comuns em sistemas padrão POSIX. Um exemplo
de interpretador de comandos seria o Bash.
[6]
https://pt.wikipedia.org/wiki/Prompt
https://pt.wikipedia.org/wiki/Interpretador_de_comandos
https://pt.wikipedia.org/wiki/Bash
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_note-ReferenceA-6
9/11
Aplicativo com interface textual,
rodando no sistema operacional
FreeDOS
Usada geralmente por usuários avançados e em atividades específicas, como
gerenciamento remoto, utiliza poucos recursos de hardware em comparação a interface
gráfica.
Assim como a interface de terminal, a interface textual
também é baseada em texto, porém também tem à
disposição um ambiente de trabalho composto por
menus, janelas e botões. Esse tipo de interface tinha
um uso difundido em aplicações baseadas no MS-DOS,
que, inclusive, nas versões mais recentes contava com
um gerenciador de programas e arquivos baseados
nesse tipo de interface (o DOS Shell). Atualmente essa
interface é muito rara, praticamente restrita a sistemas
implementados na década de 1980 e início da década
de 1990. Esse ambiente ainda prescinde do uso mouse, embora seja possível usá-lo
através do uso da biblioteca ncurses no desenvolvimento dos softwares.
Nesse tipo de interface, também chamada GUI (Graphic User Interface) além de menus,
janelas e botões também existem figuras, tanto vetoriais quanto fotografias. O usuário
interage com esse tipo de interface usando o mouse, podendo também usar o teclado e
teclas de atalho, ou então usando toques e gestos em touchscreens. A interface gráfica
permite atuar com algumas aplicações que seriam impossíveis através da linha de
comando puramente, como edição de imagem e vídeo. Acrescentar facilidade de uso e
agilidade é o objetivo da interface gráfica, tendo a desvantagem de consumir muito mais
memória que interfaces de linha de comando. Ao contrário das interfaces textuais e de
terminal, as interfaces gráficas dependem de um servidor gráfico para funcionar e se
comunicar com o sistema, e no caso dos sistemas para desktops e laptops, inclui um
gerenciador de janelas em muitos casos, para que seja possível usar mais de um aplicativo
na mesma tela. Em sistemas padrão POSIX é comum existir mais de um ambiente gráfico
para o mesmo sistema, podendo ser escolhido a critério do usuário.
Interfaces de voz, ou VUI (Voice User Interface), são aquelas em que o usuário interage
com o sistema por meio de comandos sonoros. Sendo de desenvolvimento relativamente
recente, tem sua aplicação em dispositivos adaptados para cegos e recentemente têm
aparecido também para uso geral em smartphones, tablets e desktops.
Classificações
Núcleo monolítico ou monobloco: o núcleo consiste em um único processo
executando numa memória protegida (espaço de núcleo) executando as principais
funções. Ex.: MAC OS X, OS/2, Windows, Linux, FreeBSD.
Micronúcleo ou modelo cliente-servidor: o núcleo consiste de funções mínimas
(comunicação e gerenciamento de processos), e outras funções, como sistemas de
arquivos e gerenciamento de memória, são executadas no espaço do usuário como
serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach.
https://pt.wikipedia.org/wiki/Ficheiro:Fdedit.png
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1980
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1990
https://pt.wikipedia.org/wiki/Ncurses
https://pt.wikipedia.org/wiki/Interface_do_utilizador
https://pt.wikipedia.org/wiki/Touchscreen
https://pt.wikipedia.org/wiki/Cegueira
https://pt.wikipedia.org/wiki/Monol%C3%ADtico
https://pt.wikipedia.org/wiki/MAC_OS_X
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/Micron%C3%BAcleo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/GNU_Hurd
https://pt.wikipedia.org/wiki/Mach_(n%C3%BAcleo)
10/11
Um exemplo da linha de comando
Sistema em camadas: funções do núcleo irão
executar em camadas distintas, de acordo
com seu nível de privilégio. Ex.: Multics.
Monitor de máquinas virtuais: fornece uma
abstração do hardware para vários sistemas
operacionais. Ex.: VM/370, VMware, Xen.
Monotarefa: pode-se executar apenas um
processo de cada vez Ex.: MS-DOS.
Multitarefa: além do próprio SO, vários
processos de utilizador (tarefas) estão
carregados em memória, sendo que um pode
estar ocupando o processador e outros ficam
enfileirados, aguardando a sua vez. O compartilhamento de tempo no processador é
feito de modo que o usuário tenha a impressão que vários processos estão sendo
executados simultaneamente. Cada processo recebe um tempo para ser executado.
Ao final desse tempo, outro processo é executado. Essa alternância de processos
chama-se concorrência.
Multitarefa cooperativa: Executa dois ou mais programas em simultâneo mas o
programa que está em primeiro plano tem controlo sobre o processador. Neste caso
se este programa falhar bloqueia o computador e tem que ser reiniciado. Exemplo
de SO: Windows 3.x e versões anteriores ao Mac OS 8.
Multitarefa preemptiva: É o processador que controla a execução dos programas,
desta forma permite ao sistema operativo recuperar o controlo caso um programa
bloqueie. O utilizador perde os trabalhos do programa que falhou mas os restantes
programas continuam a trabalhar. Exemplo de SO: Unix; Linux; Windows 95 e
superiores; MAC OS 8 e superiores; etc..
Elemento de lista com marcas: Ex: OS/2, Windows, Linux, FreeBSD e o Mac OS X.
Cabe destacar que processos só podem estar executando simultaneamente caso o
sistema seja multiprocessado, já que, em que cada instante de tempo, apenas um
processo está em execução em um processador ou núcleo de processamento (core).
Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores. Se
os processadores estivem na mesma máquina física, o sistema é chamado de
Sistema Multiprocessado Fortemente Acoplado. Caso esteja em máquinas
diferentes, trata-se de um Sistema Multiprocessado Fracamente Acoplado.
Monousuário: apenas um usuário por vez (apesar de poder suportar recursos como
troca de usuário). Ex.: Windows. Esse também pode ser acessado por
terminais e conexão remota.
Multiusuário: vários usuários usam o computador ao mesmo tempo, seja por
diversos terminais, seja por conexão remota como o SSH. Ex.: Linux, Unix.
† - descontinuado
Referências
https://pt.wikipedia.org/wiki/Ficheiro:Command_line.png
https://pt.wikipedia.org/w/index.php?title=Em_camadas&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Multics
https://pt.wikipedia.org/w/index.php?title=VM/370&action=edit&redlink=1
https://pt.wikipedia.org/wiki/VMware
https://pt.wikipedia.org/wiki/Xen
https://pt.wikipedia.org/wiki/Monotarefa
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/Multitarefa
https://pt.wikipedia.org/wiki/Multitarefa_cooperativa
https://pt.wikipedia.org/wiki/Preemptividade
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/Mac_OS_X
https://pt.wikipedia.org/wiki/Multiprocessamento
https://pt.wikipedia.org/wiki/Monousu%C3%A1rio
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Multiusu%C3%A1rio
https://pt.wikipedia.org/wiki/Terminal_(inform%C3%A1tica)
https://pt.wikipedia.org/w/index.php?title=Conex%C3%A3o_remota&action=edit&redlink=1
https://pt.wikipedia.org/wiki/SSH
https://pt.wikipedia.org/wiki/Linuxhttps://pt.wikipedia.org/wiki/Unix
11/11
1. ↑ Tanenbaum, Andrew S. (2006). Operating systems: design and implementation.
USA: Prentice Hall. 6 páginas
2. ↑ Comer, Douglas (2012). Operating system design: the XINU approach, Linksys
version. New York: CRC Press. 2 páginas
3. ↑ Hansen, Per Brinch, ed. (2001). Classic Operating Systems. [S.l.]: Springer.
pp. 4–7. ISBN 0-387-95113-X
4. ↑ Tanenbaum, Andrew S. (2009). Sistemas operacionais modernos. São Paulo:
Pearson Education do Brasil Ltda
5. ↑ J. GLENN BROOKSHEAR,CIENCIA DA COMPUTAÇAO: UMA VISAO
ABRANGENTE, Bookman, 2005
6. ↑ (Sistemas Operacionais - Rômulo Silva de Oliveria, Alexandre Carissimi e Simão
Toscani - Série Livros Didáticos - No 11 - Editora Sagra Luzzatto - UFRGS)
7. ↑ Comer, Douglas (2012). Operating system design: the Xinu approach. New York:
CRC Press. 239 páginas
BACH, Maurice J. The design of the Unix operating system. Upper Saddle
River: Prentice Hall. 1990.
BOVET Daniel P.; CESATI, Marco. Understanding de Linux kernel. 3.ed.
Sebastopol: O'Reilly. 2005.
MCKUSICK, Marshall K.; NEVILLE-NEIL, George V. The design and
implementation of the FreeBSD operating system. Upper Saddle River:
Addison-Wesley. 2004.
RUSSINOVITCH, Mark E.; SOLOMON, David A. Microsoft Windows internals.
4.ed. Redmond: Microsoft Press. 2005.
SILBERSCHATZ, Avi; GALVIN, Peter B.; GAGNE, Greg. Operating system
concepts. 7.ed. Hoboken: Wiley. 2005.
STALLINGS, William. Operating systems: internals and design principles.
5.ed. Upper Saddle River: Pearson Prentice Hall. 2004.
TANENBAUM, Andrew. Sistemas operacionais modernos. Rio de Janeiro:
LTC. 1999.
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-1
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-2
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-google4_3-0
http://books.google.com/?id=-PDPBvIPYBkC&lpg=PP1&pg=PP1#v=onepage&q
https://pt.wikipedia.org/wiki/International_Standard_Book_Number
https://pt.wikipedia.org/wiki/Especial:Fontes_de_livros/0-387-95113-X
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-4
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-5
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-7
https://pt.wikipedia.org/wiki/Sistema_operativo?printable=yes#cite_ref-8
1/3
Arquitetura de computadores
pt.wikipedia.org/wiki/Arquitetura_de_computadores
A evolução da informática foi caracterizada pelo desenvolvimento de computadores com
as mais diversas características, traduzidas pelos diferentes parâmetros, cada vez mais
conhecidos da maioria de usuários de computador: a CPU adotada, a capacidade de
memória, a capacidade do disco rígido, a existência de memória cache e outros menos
conhecidos. A definição destes parâmetros e a forma como os diversos componentes de
um computador são organizados, define aquilo que é conhecido por arquitetura de
computador e vai determinar aspectos relacionados à qualidade, ao desempenho e à
aplicação para a qual o computador vai ser orientado.
Existem vários modos de uso do termo, que podem se referir a:
desenho da arquitetura da CPU do computador, o seu conjunto de instruções,
"addressing modes" e técnicas, tais como paralelismo SIMD e MIMD.
termo também utilizado com significado análogo, ou semelhante, a Arquitetura de
microprocessadores (RISC x CISC).
utilização menos formal do termo, referindo-se a uma descrição dos requisitos
(especialmente requisitos de velocidades e interligação) ou implementação do
design para as várias partes de um computador, tais como memória, placa-mãe,
periféricos eletrônicos ou, mais frequentemente, CPU.
A arquitetura é frequentemente definida como o conjunto de atributos da máquina que
um programador deve compreender para que consiga programar o computador específico
com sucesso, ou seja, para que consiga compreender o que o programa irá fazer quando
da sua execução. Por exemplo, parte da arquitetura são as instruções e o raio de
operadores manipulados por elas. De uma maneira semelhante, a frequência em que o
sistema opera não é incluída na arquitetura. Esta definição revela as duas principais
considerações dos arquitetos de computadores: desenhar hardware que se comporta
como o programador pensa que se irá comportar e utilizar implementações existentes de
tecnologias (por exemplo, semicondutores), para construir o melhor computador possível.
A segunda consideração é frequentemente referida como a microarquitetura.
História
A expressão "arquitetura de computadores", na literatura, pode ser atribuída a Lyle R.
Johnson, Muhammad Usman Khan e Frederick P. Brooks, Jr. Em 1959, eram membros
do departamento de Organização de Máquinas da IBM.
Johnson teve a oportunidade de escrever uma comunicação de pesquisa proprietária
sobre Strech, um supercomputador desenvolvido pela IBM para o Laboratório Nacional
de Los Alamos. Na tentativa de caracterizar o seu nível desejado de detalhe, ele observou
[1][2]
[3]
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores
https://pt.wikipedia.org/wiki/Disco_r%C3%ADgido
https://pt.wikipedia.org/wiki/CPU
https://pt.wikipedia.org/wiki/Conjunto_de_instru%C3%A7%C3%B5es
https://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_paralela
https://pt.wikipedia.org/wiki/SIMD
https://pt.wikipedia.org/wiki/MIMD
https://pt.wikipedia.org/wiki/Arquitetura_de_microprocessadores
https://pt.wikipedia.org/wiki/RISC
https://pt.wikipedia.org/wiki/CISC
https://pt.wikipedia.org/wiki/Mem%C3%B3ria
https://pt.wikipedia.org/wiki/Placa-m%C3%A3e
https://pt.wikipedia.org/wiki/Perif%C3%A9rico
https://pt.wikipedia.org/wiki/Unidade_Central_de_Processamento
https://pt.wikipedia.org/wiki/Semicondutor
https://pt.wikipedia.org/wiki/Microarquitetura
https://pt.wikipedia.org/wiki/Laborat%C3%B3rio_Nacional_de_Los_Alamos
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-1
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-2
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-3
andre
Realce
2/3
que sua descrição de formatos, tipos de instruções, os parâmetros de hardware e
melhorias de velocidade foi no nível de "arquitetura do sistema" - Um termo que parecia
ser mais útil do que "organização de máquina".
Posteriormente, Brooks, um dos projetistas do Strech, começou o capítulo 2 de um livro
(Planning a Computer System: Project Stretch, ed W. Buchholz, 1962), escrevendo:
"Arquitetura de computadores, como outra arquitetura, é a arte de determinar as
necessidades do usuário de uma estrutura e, possível dentro das limitações econômicas e
tecnológicas.".
Brooks passou a desempenhar um papel no desenvolvimento do IBM System/360(agora
chamado de IBM System z) linha de computadores, onde a "arquitetura" ganhou moeda
como um substantivo com a definição como "o que o usuário precisa saber". Mais tarde, o
mundo da informática, empregaria o termo, em formas muito menos explícitas.
Tanto a estrutura quanto o funcionamento de um computador são, essencialmente,
simples. Em termos gerais, existem apenas quatro:
Existem quatro componentes estruturais principais.
CPU: Faz o controle da operação do computador e realiza suas funções de
processamento de dados;
Memória principal: Faz o armazenamento de dados;
E/S (Entrada/Saída): Movimenta os dados entre o computador e seu ambiente
externo;
Interconexão do sistema: Mecanismo que oferece comunicação entre a CPU,
memória principal e E/S.
Memória virtual
Outro problema recorrente envolve a memória virtual.
Historicamente, a memória de acesso aleatório (RAM) foi centenas de vezes mais cara que
o armazenamento mecânico rotativo, isto é, discos rígidos, num computador moderno.
O processador só pode executar uma instrução que esteja na memória real. O mecanismo
de Memória Virtual divide a memória real em frames e divide um arquivo no disco em
páginas de mesmo tamanho dos frames. No disco existem muito mais páginas do que
framesna memória. Sempre que for preciso uma página é copiada da memória virtual
(arquivo em disco) para um frame da memória real. Surge a necessidade de saber quando
é preciso copiar. Surge a necessidade de saber se um frame pode ser descartado ou se
precisa ser recopiado para sua página correspondente no arquivo em disco. Sempre que
uma instrução é executada a partir de um frame o hardware controlador de memória
virtual testa se o dado a que ela se refere já se encontra em algum frame. Se for o caso,
uma interrupção ocorre para que a rotina de tratamento cuide de copiar do disco para a
memória real uma página completa contendo o dado necessário.
[4]
[4]
[4]
[4]
[4]
https://pt.wikipedia.org/wiki/Projetista
https://pt.wikipedia.org/wiki/IBM_System/360
https://pt.wikipedia.org/wiki/CPU
https://pt.wikipedia.org/wiki/Entrada/Sa%C3%ADda
https://pt.wikipedia.org/wiki/CPU
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual
https://pt.wikipedia.org/wiki/Discos_r%C3%ADgidos
https://pt.wikipedia.org/wiki/Processador_gr%C3%A1fico
https://pt.wikipedia.org/wiki/Frame
https://pt.wikipedia.org/wiki/Arquivo_de_computador
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
3/3
Memória principal e secundária
Memória principal (RAM): componente de memória volátil para armazenar os programas
e execuções de forma mais rápida.
Memória secundária: é a de acesso mais lento para armazenagem dos dados não-volátil
também conhecida como HD ou HDD (hard disk drive ou disco rígido) hoje também
difundida em SSD. Curiosidade que a primeira memória secundária foi a fita magnética
ainda muito usada, mesmo sendo o componente mais lento.
Memórias voláteis são as que perdem os dados assim que o fluxo de energia é encerrado.
Por este motivo as memórias primárias são voláteis e as secundárias não-voláteis, pois a
primeira precisa armazenar os dados para processamento de forma rápida, já a segunda,
não precisa de acesso tão rápido, e sim de segurança de que a informação armazenada lá
não se perca quando o fluxo de energia for cortado.
Segmentação das instruções (pipeline)
O conjunto e instruções orienta fortemente como funcionará a segmentação de instruções.
A ideia é análoga a linha de produções em série, mas utilizada na execução das instruções.
Primeiro divide-se as instruções em pedaços menores de forma que uma instrução em
código de máquina demore muitos ciclos curtos para ser executada. Depois disso o
controle do microprocessador encarrega-se de executar várias instruções ao mesmo
tempo, cada uma utilizando um pedaço distinto do processador. Isto tem como objetivo
que na média cada instrução demore um ciclo curto para ser executada. Existem diversas
complicações em instruções de desvio (condicionais), que são tratadas por paralelismo de
código conhecida como threading (nome comercial da Intel Hyperthreading).
Arquitetura etiquetada
Arquitetura Harvard
Referências
1. ↑ Gerrit A. Blaauw & Frederick P. Brooks (1997). Computer Architecture: Concepts
and Evolution. [S.l.]: Addison-Wesley. ISBN 0-201-10557-8
2. ↑ Anthony Ralston & Edwin D. Reilly (1993). Encyclopedia of Computer Science
Third Edition. [S.l.]: Van Nostrand Reinhold. ISBN 0-442-27679-6
3. ↑ [1]
4. ↑ STALLINGS, W. Arquitetura e Organização de Computadores. 8
ed. - https://github.com/xstpl/Livros-
1/raw/master/Arquitetura%20e%20Organiza%C3%A7%C3%A3o%20de%20Compu
tadores%20-%208%C2%AA%20Ed.pdf
 
Obtida de "https://pt.wikipedia.org/w/index.php?
title=Arquitetura_de_computadores&oldid=60048507"
[4]
[4]
[4]
a b c d e f g h i j k l
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Pipeline_(hardware)
https://pt.wikipedia.org/wiki/Produ%C3%A7%C3%A3o_em_massa
https://pt.wikipedia.org/wiki/Microprocessador
https://pt.wikipedia.org/wiki/Thread_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Hyperthreading
https://pt.wikipedia.org/wiki/Arquitetura_etiquetada
https://pt.wikipedia.org/wiki/Arquitetura_Harvard
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-1
https://pt.wikipedia.org/wiki/International_Standard_Book_Number
https://pt.wikipedia.org/wiki/Especial:Fontes_de_livros/0-201-10557-8
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-2
https://pt.wikipedia.org/wiki/International_Standard_Book_Number
https://pt.wikipedia.org/wiki/Especial:Fontes_de_livros/0-442-27679-6
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-3
http://cpushack.net/CPU/cpu7.html
https://github.com/xstpl/Livros-1/raw/master/Arquitetura%20e%20Organiza%C3%A7%C3%A3o%20de%20Computadores%20-%208%C2%AA%20Ed.pdf
https://pt.wikipedia.org/w/index.php?title=Arquitetura_de_computadores&oldid=60048507
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_note-:0-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-0
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-1
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-2
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-3
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-4
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-5
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-6
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-7
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-8
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-9
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-10
https://pt.wikipedia.org/wiki/Arquitetura_de_computadores?printable=yes#cite_ref-:0_4-11
1/5
Uma CPU Intel 80386, de 1985,
com seu circuito integrado exposto.
Unidade central de processamento
pt.wikipedia.org/wiki/Unidade_central_de_processamento
Nota: Se procura a caixa onde se localizam os
componentes do computador, consulte: Gabinete
(informática).
A unidade central de processamento ou CPU
(Central Processing Unit), também conhecida como
processador, é a parte de um sistema computacional,
que realiza as instruções de um programa de
computador, para executar a aritmética básica, lógica, e
a entrada e saída de dados. O papel da CPU pode ser
comparado ao papel de um cérebro no funcionamento
de um computador. Isto é, realiza operações lógicas,
cálculos e processamento de dados. O termo foi
cunhado no início de 1960 e seu uso permanece até os
dias atuais pois, ainda que sua forma, desenho e
implementação tenham mudado drasticamente, seu funcionamento fundamental
permanece o mesmo.
Conceito
As primeiras CPUs personalizadas foram concebidas como parte de um computador
maior. No entanto, este método caro de fazer CPUs personalizadas para uma determinada
aplicação rumou para o desenvolvimento de processadores produzidos em massa que são
feitos para um ou vários propósitos. Esta tendência de padronização em geral começou na
época de discretos minicomputadores e mainframes transistors e acelerou rapidamente
com a popularização dos circuitos integrados (CI).
Os CI têm permitido processadores cada vez mais complexos para serem concebidos e
fabricados emtamanhos da ordem de nanômetros. Tanto a miniaturização como a
padronização dos processadores têm aumentado a presença destes dispositivos digitais na
vida moderna, muito além da aplicação limitada dedicada a computadores. Os
microprocessadores modernos aparecem em tudo, desde automóveis até celulares e
brinquedos para crianças.
Em máquinas grandes, CPUs podem exigir uma ou mais placas de circuito impresso. Em
computadores pessoais e estações de trabalho de pequeno porte, a CPU fica em um único
chip de silício chamado de microprocessador. Desde 1970 a classe de microprocessadores
de CPUs quase completamente ultrapassou todas as implementações de outra CPUs.
CPUs modernas são circuitos integrados de grande escala em pequenos pacotes
retangulares, com vários pinos de conexão.
Uma CPU é composta basicamente, pela maioria dos autores, pelos três seguintes
componentes:
[1]
[2]
[3]
https://pt.wikipedia.org/wiki/Ficheiro:80386_open.jpg
https://pt.wikipedia.org/wiki/Intel_80386
https://pt.wikipedia.org/wiki/Circuito_integrado
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento
https://pt.wikipedia.org/wiki/Gabinete_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Instru%C3%A7%C3%B5es
https://pt.wikipedia.org/wiki/Programa_de_computador
https://pt.wikipedia.org/wiki/Aritm%C3%A9tica
https://pt.wikipedia.org/wiki/C%C3%A9rebro
https://pt.wikipedia.org/wiki/Minicomputador
https://pt.wikipedia.org/wiki/Mainframe
https://pt.wikipedia.org/wiki/Transistor
https://pt.wikipedia.org/wiki/Circuito_integrado
https://pt.wikipedia.org/wiki/Nan%C3%B3metro
https://pt.wikipedia.org/wiki/Autom%C3%B3veis
https://pt.wikipedia.org/wiki/Celular
https://pt.wikipedia.org/wiki/Microprocessador
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-TECMUNDO-1
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-HARD-2
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-weik1961-3
andre
Realce
2/5
O EDVAC, um dos primeiros
computadores.
OBS.: Alguns autores também incluem, na mesma categoria dos Registradores, a
Memória cache (L1, L2 e L3) como componentes da CPU.
História
Computadores como o ENIAC tinham que ser
fisicamente religados a fim de realizar diferentes
tarefas, por isso estas máquinas são muitas vezes
referidas como "computadores de programa fixo".
Visto que o termo "CPU" é geralmente definido
como um dispositivo para execução de um
software (programa de computador), os primeiros
dispositivos que poderiam muito bem ser
chamados CPUs vieram com o advento do
computador com programa armazenado.
A ideia do programa de computador já estava
presente no projeto do ENIAC de J. Presper Eckert
e John William Mauchly, mas inicialmente foi
omitido para que a máquina pudesse ser concluída
em menos tempo. Em 30 de junho de 1945, antes
do ENIAC ter sido concluído, o matemático John
von Neumann distribuiu um documento intitulado
"primeiro esboço de um relatório sobre o EDVAC".
É descrito o projeto de um programa de computador armazenado que viria a ser
concluído em agosto de 1949. O EDVAC foi projetado para executar um determinado
número de instruções (ou operações) de vários tipos. Estas instruções podem ser
combinados para criar programas úteis para o EDVAC para ser executado.
Significativamente, os programas escritos para EDVAC foram armazenados em memórias
de computador de alta velocidade e não especificados pela ligação física do computador.
Isso superou uma grave limitação do ENIAC que era o longo tempo e esforço necessário
para reconfigurar o computador para executar uma nova tarefa. Com o design de von
Neumann, o programa, ou software, que executava no EDVAC poderia ser mudado
simplesmente mudando o conteúdo da memória do computador.
Enquanto von Neumann é mais frequentemente creditado como sendo o desenvolvedor
do computador com programa armazenado, devido à sua concepção do EDVAC, outros
antes dele, como Konrad Zuse, tinham sugerido e implementado ideias semelhantes. A
chamada arquitetura de Harvard do Harvard Mark I, que foi concluída antes do EDVAC,
também utilizou um projeto de programa armazenado usando fita de papel perfurado em
vez de memória eletrônica. A diferença fundamental entre as arquiteturas de von
Neumann e Harvard é que este último separa o armazenamento e o tratamento de
instruções da CPU e de dados, enquanto a primeira utiliza o mesmo espaço de memória
para ambos. A maioria dos processadores modernos são principalmente von Neumann
em design, mas elementos da arquitetura de Harvard são comumente vistas também.
[4]
https://pt.wikipedia.org/wiki/Ficheiro:Edvac.jpg
https://pt.wikipedia.org/wiki/EDVAC
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache
https://pt.wikipedia.org/wiki/ENIAC
https://pt.wikipedia.org/wiki/Software
https://pt.wikipedia.org/wiki/J._Presper_Eckert
https://pt.wikipedia.org/wiki/John_William_Mauchly
https://pt.wikipedia.org/wiki/John_von_Neumann
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_(computador)
https://pt.wikipedia.org/wiki/Konrad_Zuse
https://pt.wikipedia.org/wiki/Arquitetura_Harvard
https://pt.wikipedia.org/wiki/Harvard_Mark_I
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-4
3/5
CPU, memória de núcleo
magnético e barramento
externo de um DEC PDP-8/I.
feito de circuitos integrados em
média escala.
Como um dispositivo digital, uma CPU é limitada a um conjunto de estados discretos, e
requer algum tipo de elemento de comutação para diferenciar e mudar estados. Antes do
desenvolvimento comercial do transistor, relés elétricos e válvulas eletrônicas eram
comumente utilizados como elementos de comutação.
Embora estes tivessem considerável vantagem em termos de velocidade sobre o que se
usava antes, desenhos puramente mecânicos, eles não eram confiáveis por diversas
razões. Por exemplo, a construção de circuitos de lógica sequencial de corrente contínua
fora de relés requer um hardware adicional para lidar com os problemas de contato.
Enquanto as válvulas não sofrem rejeição de contato, elas devem aquecer antes de se
tornarem plenamente operacionais, e eventualmente deixam de funcionar devido à lenta
contaminação dos seus cátodos que ocorre no curso da operação normal. Se uma válvula
selada vaza, como por vezes acontece, a contaminação do cátodo é acelerada.
Normalmente, quando um tubo apresenta defeito, a CPU teria que ser examinada para
localizar o componente que falhou a fim de que pudesse ser substituído. Portanto, os
primeiros computadores eletrônicos (baseados em válvulas) eram geralmente mais
rápidos, mas menos confiáveis do que os computadores eletromecânicos (baseados em
relés).
Computadores baseados em válvulas como o EDVAC tendiam a trabalhar em média oito
horas até apresentarem falhas, enquanto os computadores baseados em relés como o
(mais lento, mas anterior) Harvard Mark I apresentava defeitos muito raramente. No
final, CPUs baseadas em válvulas tornaram-se dominantes porque as vantagens de
velocidade significativa oferecidas geralmente superavam os problemas de confiabilidade.
A maioria destas antigas CPUs funcionava com baixa frequências de relógio em
comparação com os design microeletrônicos modernos. Sinais de frequência de relógio
variando de 100 kHz a 4 MHz eram muito comuns nesta época, em grande parte
limitados pela velocidade dos dispositivos de comutação que eram construídos.
CPUs baseadas em transistores discretos e em circuitos integrados
A complexidade do projeto de CPUs aumentou quando
várias tecnologias facilitaram a construção de menores e
mais confiáveis dispositivos eletrônicos. O primeiro
aprimoramento veio com o advento do transistor. CPUs
transistorizadas durante os anos 1950 e 1960 já não
precisavam mais ser construídas com volumosos, não
confiáveis e frágeis elementos de comutação, tais como
válvulas e relés elétricos. Com esta melhoria, CPUs mais
complexas e mais confiáveis foram construídas em umaou várias placas de circuito impresso com componentes
discretos (individuais).
Durante este período, um método de fabricação de
transistores em um espaço compacto ganhou
popularidade. O circuito integrado (IC, conforme iniciais em inglês) permitiu que um
[3]
https://pt.wikipedia.org/wiki/Ficheiro:PDP-8i_cpu.jpg
https://pt.wikipedia.org/wiki/Barramento
https://pt.wikipedia.org/wiki/Digital
https://pt.wikipedia.org/wiki/Rel%C3%A9
https://pt.wikipedia.org/wiki/V%C3%A1lvula_termi%C3%B4nica
https://pt.wikipedia.org/wiki/Corrente_cont%C3%ADnua
https://pt.wikipedia.org/wiki/EDVAC
https://pt.wikipedia.org/wiki/Harvard_Mark_I
https://pt.wikipedia.org/wiki/Frequ%C3%AAncia_de_rel%C3%B3gio
https://pt.wikipedia.org/wiki/Hertz
https://pt.wikipedia.org/wiki/Transistor
https://pt.wikipedia.org/wiki/V%C3%A1lvula_electr%C3%B3nica
https://pt.wikipedia.org/wiki/Rel%C3%A9
https://pt.wikipedia.org/wiki/Circuito_impresso
https://pt.wikipedia.org/wiki/Circuito_integrado
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-weik1961-3
4/5
O circuito integrado de um Intel 8742.
grande número de transistores fossem fabricados em um único die baseado em
semicondutor, ou "chip". No início apenas circuitos digitais não especializados e muito
básicos, tais como portas NOR foram miniaturizados em ICs. CPUs baseadas nestes IC de
"blocos construídos" eram geralmente referidos como dispositivos de "integração em
pequena escala" (SSI, conforme iniciais em inglês). SSI ICs, tais como os usados no
computador orientado Apollo, normalmente continham somas de transistores em
múltiplos de dez.
Para construir uma CPU inteira fora dos SSI ICs eram necessários milhares de chips
individuais, mas ainda assim consumiam muito menos espaço e energia do que modelos
anteriores baseados em transistores discretos. Quando a tecnologia microeletrônica
avançou, um crescente número de transistores foram colocados em ICs, diminuindo
assim a quantidade de ICs individuais necessários para uma CPU completa. Circuitos
integrados MSI e LSI (integração em média e em larga escala, conforme iniciais em
inglês) aumentaram a soma de transistores às centenas, e depois milhares.
Microprocessadores
Ver artigo principal: Microprocessador
A introdução do microprocessador na década de
1970 afetou significativamente a concepção e
implementação de processadores.
Com a introdução do primeiro microprocessador
disponível comercialmente (o Intel 4004) em 1970
e, posteriormente, do primeiro microprocessador
de 16 bits (o Intel 8080), em 1974, os
microprocessadores rapidamente tomaram o
mercado e se consolidaram com o tipo de CPU
mais utilizado, tornando-se praticamente
sinônimos.
Microprocessadores utilizam circuitos integrados de transistores, alcançando assim as
vantagens dos processadores de transistores ao mesmo tempo que economizam espaço,
energia e aquecem menos. Por esses motivos, podem também atingir frequências de clock
maiores, o que se traduz em mais operações executadas por segundo e,
consequentemente, mais velocidade perceptível ao usuário.
O menor tamanho também possibilitou a inclusão de memória cache, o que possibilita um
circuito atingir maior velocidade na execução de programas sem com isso precisar
recorrer à frequências de clock maiores. Como clocks maiores significam mais energia
consumida e maior calor dissipado, os ganhos de desempenho resultantes da inclusão
destas memórias foram essenciais para o surgimento do smartphone. 
Referências
[5][6]
[7]
https://pt.wikipedia.org/wiki/Ficheiro:Intel_8742_153056995.jpg
https://pt.wikipedia.org/wiki/Circuito_integrado
https://pt.wikipedia.org/wiki/Intel
https://pt.wikipedia.org/wiki/Die_(circuito_integrado)
https://pt.wikipedia.org/wiki/Semicondutor
https://pt.wikipedia.org/wiki/Porta_NOR
https://pt.wikipedia.org/wiki/Microprocessador
https://pt.wikipedia.org/wiki/Microprocessador
https://pt.wikipedia.org/wiki/Intel_4004
https://pt.wikipedia.org/wiki/16_bits
https://pt.wikipedia.org/wiki/Intel_8080
https://pt.wikipedia.org/wiki/Circuito_integrado
https://pt.wikipedia.org/wiki/Sinal_de_rel%C3%B3gio
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache
https://pt.wikipedia.org/wiki/Smartphone
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-5
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-6
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_note-7
5/5
1. ↑ Arruda, Felipe (17 de agosto de 2007). «A História dos Processadores».
Tecmundo. Consultado em 15 de janeiro de 2012
2. ↑ Morimoto, Carlos E. (30 de julho de 2007). «Processador». Guia do Hardware.
Consultado em 15 de janeiro de 2012
3. ↑ Weik, Martin H. (1961). «A Third Survey of Domestic Electronic Digital
Computing Systems». Ballistic Research Laboratories
4. ↑ VON NEUMANN, John. First Draft of a Report on the EDVAC Arquivado em 23
de abril de 2004, no Wayback Machine., Moore School of Electrical Engineering,
Universidade da Pensilvânia, 1945
5. ↑ «Computer Terminology - Processors». www.unm.edu. Consultado em 1 de
novembro de 2018
a b
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-TECMUNDO_1-0
http://www.tecmundo.com.br/2157-a-historia-dos-processadores.htm
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-HARD_2-0
http://www.hardware.com.br/termos/processador
http://ed-thelen.org/comp-hist/BRL61.html
https://pt.wikipedia.org/wiki/Ballistic_Research_Laboratory
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-4
http://www.virtualtravelog.net/entries/2003-08-TheFirstDraft.pdf
https://web.archive.org/web/20040423232125/http://www.virtualtravelog.net/entries/2003-08-TheFirstDraft.pdf
https://pt.wikipedia.org/wiki/Wayback_Machine
https://pt.wikipedia.org/wiki/Universidade_da_Pensilv%C3%A2nia
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-6
https://www.unm.edu/~tbeach/terms/processors.html
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-weik1961_3-0
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento?printable=yes#cite_ref-weik1961_3-1
1/6
Diferentes tipos de RAM. A partir
do alto: DIP, SIPP, SIMM 30 pin,
SIMM 72 pin, DIMM (168-pin),
DDR DIMM (184-pin)
Memória (informática)
pt.wikipedia.org/wiki/Memória_(informática)
 Nota: Para outros significados, veja RAM (desambiguação).
Em informática, memória são todos os dispositivos
que permitem a um computador guardar dados,
temporária ou permanentemente. Memória é um
termo genérico para designar componentes de um
sistema capazes de armazenar dados e programas. O
conceito de computador digital binário com programa
armazenado (arquitetura de Von Neumann e
subsequentes) é sempre baseado no uso de memória, e
não existiria sem a utilização destas.
A unidade básica de memória é o digito binário, ou bit.
Um bit pode conter 0 ou 1. É a unidade mais simples
possível. Um sistema que armazenasse apenas um
destes valores não poderia formar a base de um
sistema de memória.
Tipologia
Basicamente são dois tipos de memórias que existem: memórias voláteis, isto é, perdem
seus dados com ausência de energia, como a memória cache, registradora, memória de
acesso aleatória (RAM). As memórias flash, disco rígido (HD), são memórias não voláteis,
isto é, não perdem seus dados na ausência de energia.
Memória principal: "também chamadas de memória real, são memórias que o
processador pode endereçar diretamente, sem as quais o computador não pode
funcionar. Estas fornecem geralmente uma ponte para as secundárias, mas a sua
função principal é a de conter a informação necessária para o processador num
determinado momento; esta informação pode ser, por exemplo, os programas em
execução. Nesta categoria insere-se a RAM,que é uma memória de semicondutores,
volátil, com acesso aleatório, isto é, palavras individuais de memória sãoacessadas
diretamente, utilizando uma lógica de endereçamento implementada em hardware.
Também pode-se compreender a memória ROM (não volátil), registradores e
memórias cache."
https://pt.wikipedia.org/wiki/Ficheiro:RAM_n.jpg
https://pt.wikipedia.org/wiki/SIMM
https://pt.wikipedia.org/wiki/DIMM
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/RAM_(desambigua%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Inform%C3%A1tica
https://pt.wikipedia.org/wiki/Computador
https://pt.wikipedia.org/wiki/Processador
https://pt.wikipedia.org/wiki/RAM
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_ROM
https://pt.wikipedia.org/wiki/Registrador_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache
andre
Realce
2/6
Memória secundária: memórias chamadas de “memórias de armazenamento em
massa”, para armazenamento permanente de dados. Não podem ser endereçadas
diretamente, a informação precisa ser carregada em memória principal antes de
poder ser tratada pelo processador. Não são estritamente necessárias para a
operação do computador. São não-voláteis, permitindo guardar os dados
permanentemente. Como memórias externas, de armazenamento em massa,
podemos citar os discos rígidos como o meio mais utilizado, uma série de discos
óticos como CDs, DVDs e Blu-Rays, disquetes e fitas magnéticas.
Às vezes faz-se uma diferença entre memória secundária e memória terciária. A
memória secundária não necessita de operações de montagem (inserção de uma mídia ou
média em um dispositivo de leitura/gravação) para acessar os dados, como discos rígidos;
a memória terciária depende das operações de montagem, como discos ópticos e fitas
magnéticas, entre outros.
Os discos rígidos magnéticos consistem uma categoria a parte nas memórias ditas
“externas”, pois geralmente armazenam sistema, programas e arquivos de usuários, são
vendidos hoje (2011) em capacidades que variam de 500GB a 3TB. A tecnologia de
transmissão de dados mais atual para sistemas desktop é a Serial ATA 3, ou SATA 600, e
para servidores é o SAS, muito semelhante ao SATA mas com velocidade (1.2GBPS) e
padrões de qualidade de fabricação superiores. Ainda sobrevivem discos com interface
SCSI, principalmente as ultra wide 4, capazes de transmitir até 320MB/s com a
tradicional alta confiabilidade e durabilidade dos discos SCSI.
No nível seguinte podemos citar discos de leitura ótica e unidades de fita (as ditas
memórias terciárias). Discos óticos são muito utilizados para guardar programas e como
backup de arquivos pessoais. O CD (Compact disk), em suas diversas versões, é capaz de
armazenar 700MB, o DVD (Digital Video Disk) armazena até 4.7GB (8.5GB na versão
“dual layer”) e o Blu-ray é capaz de armazenar até 50GB. As fitas magnéticas são
dispositivos de acesso sequencial. As antigas DAT tem sido substituídas pelas modernas
fitas Ultrium LTO (Linear Tape Open) que, em sua 5ª geração, são capazes de armazenar
1.5TB e realizar leitura a uma velocidade máxima de 140MB/s.
As principais tecnologias de implantação de memórias em uso corrente são:
Portas lógicas e flip-flops, usados na implementação da memória cache.
Transistores e circuitos de refrescamento, usados na implementação da memória
principal.
Arranjos de conexões, utilizados na implementação de certas ROMs (memórias de
leitura).
Fitas magnéticas, utilizadas principalmente para cópias de segurança e
arquivamento a longo prazo.
Discos magnéticos, como discos rígidos e disquetes - a principal tecnologia de
implementação de memória secundária.
Discos ópticos, como CDs e DVDs, e suas diversas variações.
Memória flash, um tipo de memória semicondutora não volátil muito usada em
câmeras digitais e leitores de MP3.
https://pt.wikipedia.org/wiki/Disco_r%C3%ADgido
https://pt.wikipedia.org/wiki/CD
https://pt.wikipedia.org/wiki/DVD
https://pt.wikipedia.org/wiki/Blu-Ray
https://pt.wikipedia.org/wiki/Disquete
https://pt.wikipedia.org/wiki/Fitas_magn%C3%A9ticas
https://pt.wikipedia.org/wiki/M%C3%ADdia
https://pt.wikipedia.org/wiki/Disco_%C3%B3ptico
https://pt.wikipedia.org/wiki/Fita_magn%C3%A9tica
https://pt.wikipedia.org/wiki/Porta_l%C3%B3gica
https://pt.wikipedia.org/wiki/Flip-flop
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_cache
https://pt.wikipedia.org/wiki/Transistor
https://pt.wikipedia.org/wiki/Refrescamento
https://pt.wikipedia.org/wiki/ROM
https://pt.wikipedia.org/wiki/Fita_magn%C3%A9tica
https://pt.wikipedia.org/wiki/Backup
https://pt.wikipedia.org/wiki/Disco_r%C3%ADgido
https://pt.wikipedia.org/wiki/Disquete
https://pt.wikipedia.org/wiki/CD
https://pt.wikipedia.org/wiki/DVD
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_flash
https://pt.wikipedia.org/wiki/C%C3%A2mera_digital
https://pt.wikipedia.org/wiki/MP3
3/6
Memória SRAM de 64MB.
Existem também tecnologias que foram usadas no passado, mas tornaram-se obsoletas:
Memórias de tecnologia delay line, uma das primeiras tecnologias de memória
principal, que armazenavam os dados na forma de pulsos sonoros em uma coluna
de mercúrio.
Memórias CRT, também chamadas de Williams-tube, um tipo de memória que
usava um tubo CRT para armazenar dados na forma de pontos luminosos.
Memórias de núcleo de ferrite, uma tecnologia popular de implementação da
memória principal nas décadas de 1940 e 1950.
Memórias de filme fino, uma melhoria da tecnlogia de núcleo de ferrite, utilizada em
alguns computadores na década de 1960.
Memórias voláteis
Memórias voláteis são as que requerem energia para manter a informação armazenada.
São fabricadas com base em duas tecnologias: dinâmica e estática. Ver alocação de
memória.
Memória dinâmica
A memória dinâmica é a mais barata delas e, portanto, a mais utilizada nos computadores
e são aquelas que foram popularizadas como memórias RAM. Este atributo vem do nome
inglês "Random Access Memory" (memória de acesso aleatório), que significa que os
dados nela armazenados podem ser acessados a partir de qualquer endereço. As
memórias RAM se contrapõem com as de acesso seqüencial, que exigem que qualquer
acesso seja feito a iniciar pelo primeiro endereço e, seqüencialmente, vai “pulando” de um
em um até atingir o objetivo. Na realidade, existem outras memórias de acesso aleatório
nos computadores, inclusive não voláteis, portanto, é importante ter o conhecimento de
que o nome RAM é apenas uma popularização do nome da memória principal dos
computadores, utilizada para armazenar os programas e dados no momento da execução.
O nome dinâmica é referente à tecnologia utilizada para armazenar programas e dados e
não à forma de acessá-los. De modo simplista ela funciona como uma bateria que deve ser
recarregada sempre que apresentar carga insuficiente para alimentar o equipamento.
Todas as vezes que a CPU (unidade de processamento central) for acessar a memória,
para escrita ou para leitura, cada célula dessa memória é atualizada. Se ela tem 1 lógico
armazenado, sua “bateria” será recarregada; se ela tem 0 lógico, a “bateria” será
https://pt.wikipedia.org/wiki/Ficheiro:SODIMM_64MB_SDRAM.JPG
https://pt.wikipedia.org/wiki/SRAM
https://pt.wikipedia.org/w/index.php?title=Delay_line&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Som
https://pt.wikipedia.org/wiki/Merc%C3%BArio_(elemento_qu%C3%ADmico)
https://pt.wikipedia.org/w/index.php?title=Mem%C3%B3ria_CRT&action=edit&redlink=1
https://pt.wikipedia.org/wiki/CRT
https://pt.wikipedia.org/w/index.php?title=Mem%C3%B3ria_de_n%C3%BAcleo_de_ferrite&action=edit&redlink=1
https://pt.wikipedia.org/w/index.php?title=Mem%C3%B3ria_de_filme_fino&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Aloca%C3%A7%C3%A3o_de_mem%C3%B3ria
https://pt.wikipedia.org/wiki/RAM
https://pt.wikipedia.org/wiki/CPU
4/6
Memória PROM.
descarregada. Este procedimento é chamado de atualizar, em inglês refresh de memória.
Memória estática
A memória estática não necessita ser analisada ou recarregada a cada momento.
Fabricada com circuitos eletrônicos conhecidos como latch, guardam a informação por
todo o tempo em que estivera receber alimentação.
Memórias não voláteis
São aquelas que guardam todas as informações mesmo quando não estiverem a receber
alimentação. Como exemplos, citam-se as memórias conhecidas por ROM, FeRAM e
FLASH, bem como os dispositivos de armazenamento em massa, disco rígido, CDs e
disquetes. As memórias somente para leitura, do tipo ROM (sigla de Read Only Memory),
permitem o acesso aleatório e são conhecidas pelo fato de o usuário não poder alterar o
seu conteúdo. Para gravar uma memória deste tipo são necessários equipamentos
específicos. Dentre as memórias do tipo ROM destacam-se as seguintes:
Sigla Nome Tecnologia
ROM Read Only Memory
(memória somente
de leitura)
Gravada na fábrica uma única vez
PROM Programable Read
Only Memory
(memória
programável
somente de leitura)
Gravada pelo usuário uma única vez
EPROM Erasable
Programable Read
Only Memory
(memória
programável e
apagável somente
de leitura)
Pode ser gravada ou regravada por meio de um
equipamento que fornece as voltagens adequadas
em cada pino. Para apagar os dados nela
contidos, basta iluminar o chip com raios
ultravioleta. Isto pode ser feito através de uma
pequena janela de cristal presente no circuito
integrado.
https://pt.wikipedia.org/wiki/Ficheiro:D23128C_PROM.jpg
https://pt.wikipedia.org/wiki/L%C3%ADngua_inglesa
https://pt.wikipedia.org/w/index.php?title=Refresh&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Latch
https://pt.wikipedia.org/wiki/ROM
https://pt.wikipedia.org/wiki/FeRAM
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_flash
https://pt.wikipedia.org/wiki/CDs
https://pt.wikipedia.org/wiki/Ultravioleta
5/6
EEPROM Electrically Erasable
Programable Read
Only Memory
(memória
programável e
apagável
eletronicamente
somente de leitura)
Pode ser gravada, apagada ou regravada
utilizando um equipamento que fornece as
voltagens adequadas em cada pino.
A Flash é anterior a FeRAM, mas é uma variação do tipo EPROM. Tornaram-se muito
populares por dois motivos: a utilização de dispositivos de armazenamento removíveis
como os chamados pen drives, a aplicação em equipamentos de som que reproduzem
música no formato MP3 e os cartões de memória das câmeras digitais. Os dados
armazenados neste tipo de memória permanecem ali sem a necessidade de alimentação.
Sua gravação é feita em geral através da porta USB que fornece 5 Volts para alimentação.
As memórias de massa podem armazenar grande quantidade de informação e têm tido
seu tamanho reduzido a cada dia. O disco rígido é o meio mais comum neste tipo de
memória, mas os disquetes ainda ocupam uma pequena parcela do mercado. Não é tão
rápida como a memória flash mas já é possível utilizá-la em equipamentos de reprodução
de música e filmes como os portáteis que reproduzem videoclipes de música em vários
formatos, como MPEG.
De um modo geral os computadores encontram-se limitados nas quantidades de memória
que podem conter. A esse limite chamado capacidade de expansão corresponde o
valor máximo de memória que um sistema específico pode conter. Existem limitações
quanto ao hardware e ao software.
No que respeita às limitações de hardware, de equipamento, a quantidade de memória é
limitada pelo espaço de endereçamento do processador. Um processador que utilize
endereços de 32 bits, por exemplo, só poderá endereçar 2³² (1) palavras de memória. Esta
é a razão pela qual os computadores que utilizam processadores 32 bit (x86) são limitados
a 4 gigabytes de memória. Enquanto os processadores atuais 64 bit gerenciam até 128 GB
de memória RAM e 16 TB de memória virtual. O sistema operacional também deve ser 64
bit para trabalhar com esses valores.
Um determinado software (como o sistema operativo) pode ter sido desenhado para
permitir uma quantidade limitada de memória.
O limite de capacidade de expansão de memórias RAM também é limitado pela placa-
mãe do computador, que provê um certo número de fendas para as cartas de memória,
bem como o chipset necessário para acessar a memória principal.
Referências
Proença, Alberto José. (1999) Arquitectura de Computadores: Notas de Estudo. [1]
SICA, Carlos. "Sistemas Automáticos com Microcontroladores 8031/8051", Editora
Novatec, 2006.
https://pt.wikipedia.org/wiki/USB_flash_drive
https://pt.wikipedia.org/wiki/USB
https://pt.wikipedia.org/wiki/Disco_r%C3%ADgido
https://pt.wikipedia.org/wiki/Disquete
https://pt.wikipedia.org/wiki/Videoclipe
https://pt.wikipedia.org/wiki/MPEG
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/Software
https://pt.wikipedia.org/wiki/Palavra
https://pt.wikipedia.org/wiki/32_bit
https://pt.wikipedia.org/wiki/Gigabyte
https://pt.wikipedia.org/wiki/64_bit
https://pt.wikipedia.org/wiki/GB
https://pt.wikipedia.org/wiki/TB
https://pt.wikipedia.org/wiki/Sistema_operacional
https://pt.wikipedia.org/wiki/Sistema_operativo
https://pt.wikipedia.org/wiki/Placa-m%C3%A3e
https://pt.wikipedia.org/wiki/Chipset
http://gec.di.uminho.pt/discip/TextoAC/cap11.html
6/6
VELLOSO, Fernando de Castro. Informática: conceitos básicos. 8ed. Rio de
Janeiro:Elsevier,2011.
Obtida de "https://pt.wikipedia.org/w/index.php?
title=Memória_(informática)&oldid=59180013"
https://pt.wikipedia.org/w/index.php?title=Mem%C3%B3ria_(inform%C3%A1tica)&oldid=59180013
1/3
Entrada/saída
pt.wikipedia.org/wiki/Entrada/saída
Entrada/saída, sigla E/S (em inglês: Input/output, sigla I/O) é um termo utilizado
quase que exclusivamente no ramo da computação (ou informática), indicando entrada
(inserção) de dados por meio de algum código ou programa, para algum outro programa
ou hardware, bem como a sua saída (obtenção de dados) ou retorno de dados, como
resultado de alguma operação de algum programa, consequentemente resultado de
alguma entrada.
São exemplos de unidades de entrada de um computador: microfone, teclado, mouse,
scanner, leitor de código de barras, máquina fotográfica digital, webcam, joystick e outros
acessórios de jogos.
São exemplos de unidades de saída de um computador: monitor, caixas de som,
impressora e outros.
Algumas unidades são de entrada e saída de dados ou também chamados Dispositivos
Híbridos: , disquete, tela sensível ao toque,celular. As interfaces de entrada e saída são
responsáveis pela conexão entre as várias partes de um sistema computacional baseado
na arquitetura de Von-Neumann. Esta interface é responsável por conectar fisicamente o
processador e a memória do sistema ao barramento, tornando-se o terceiro elemento do
sistema computacional proposto, foi uma grande revolução no mundo da informática,
pois facilita a vida de muitas pessoas.
Ao contrário do que se pode pensar a interface de entrada e saída não é só o conector
físico e sim também o responsável pela comunicação lógica entre o barramento e o
dispositivo. Essa função de conexão foi basicamente desenvolvida para que seja possível a
comunicação entre vários dispositivos, fazendo com que a velocidade do barramento seja
mais bem aproveitada e ainda tanto os periféricos quanto os elementos essenciais tenham
programação/produção mais voltada ao seu desempenho mantendo sempre a
interconexão com as interfaces de entrada e saída.
Chamamos de dispositivos de entrada e saída os responsáveis por incorporar e extrair
informação de um sistema de computador. Eles se adequam dentro da denominada
Arquitetura de Von Neumann, que nos informa as principais partes de um computador.
Estes dispositivos evoluíram bastante com o tempo, existindo na atualidade muitas
variantes que no inicio da informática pareciam impossíveis.
Todos os periféricos trabalham através de interrupções que fazem com que os processos
executados sejam suspendidos temporariamente. Assim, os dispositivos de entrada e
saída enviam interrupções à CPU através de um controlador que pode estar conjunto ao
próprio processador, além de habilitar ou desabilitar estes pedidos. O procedimento
envolve a execução da instrução que lhe foi dada, que estes valores sejam salvos para
serem processados novamente, que a CPU atenda ao dispositivo e

Outros materiais