Buscar

Apostila sobre Sistemas Computacionais

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 19 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 19 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 19 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

CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 
 
1.1 - CONCEITUAÇÃO 
 
A INFORMAÇÃO E O PROCESSAMENTO DA INFORMAÇÃO 
 
O que é informação? 
 
Informação é qualquer idéia ou fato que tenha sido registrado ou transmitido de 
alguma forma, ou seja, é o elemento a ser tratado e é definida como tudo aquilo que permite 
adquirir qualquer tipo de conhecimento e, portanto, existirá informação sempre que se der a 
conhecer algo que até então se desconhecia. 
Um jornal, por exemplo, está repleto de informações. A informação, porém, não 
precisa ser guardada apenas na forma de letras impressas sobre papel. A música que está 
gravada num disco também é informação, assim como tudo o que uma pessoa consegue 
guardar em sua memória. 
 
A teoria da informação 
 
Quem fez pela primeira vez uma análise mais rigorosa da transmissão da 
informação foi Claude Shannon, criador da Teoria da Informação. 
De acordo com Shannon, sempre que uma informação é transmitida estão 
envolvidos os seguintes elementos: 
 
- o transmissor, que é a parte que envia a informação; 
- o sinal, que é a forma de transmissão da informação; 
- o canal, que é o meio utilizado para enviar o sinal; 
- a mensagem, que é o conteúdo da informação; 
- o ruído, que é o que chega ao receptor além do que foi intencionalmente enviado; 
- o receptor, que é a parte que recebe a informação. 
 
Assim, quando uma pessoa está falando, ela (transmissor) emite ondas sonoras 
(sinal) através do ar (canal). Nessas ondas vão as frases (mensagem) que chegam ao 
ouvinte (receptor). O ouvinte pode entender exatamente o que o falante quer dizer, mas 
pode compreender algo diferente ou além da mensagem (o ruído). 
 
O processamento de dados 
 
O termo processamento de dados (ou de informações) engloba qualquer trabalho de 
manipulação de dados que tenha como finalidade obter resultados previamente 
estabelecidos, ou seja, este consiste em uma série de atividades ordenadamente realizadas, 
com o objetivo de produzir um arranjo determinado de informações a partir de outras 
obtidas inicialmente. 
Esse grupo de atividades envolve a transmissão, o armazenamento, a recuperação, a 
comparação e a combinação de informações. 
A manipulação das informações coletadas no início da atividade chama-se 
processamento; as informações iniciais são usualmente denominadas dados. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 2 
Os termos dado e informação podem ser tratados como sinônimos ou como termos 
distintos; dado pode ser definido como a matéria-prima originalmente obtida de uma ou 
mais fontes (etapa de coleta) e informação, como o resultado do processamento, isto é, o 
dado processado ou "acabado". 
A figura 1.1 mostra o esquema básico de um processamento de dados (manual ou 
automático), que resulta em um produto acabado: a informação. 
 
 
Figura 1.1 - Etapas básicas de um processamento de dados. 
 
Informação subentende dados organizados (segundo uma orientação específica) 
para o atendimento ou emprego de uma pessoa ou grupo que os recebe. 
Ao procurarmos na lista telefônica o número de um assinante, estamos realizando 
um trabalho de recuperação deste dado. Estamos, portanto, processando dados. 
Ao efetuar uma operação matemática estamos manipulando dados com a finalidade 
de obter um resultado específico, o que também é um processamento de dados. 
 
ALGORITMOS E PROGRAMAS 
 
Qualquer processamento de dados requer a execução de uma série de etapas, que 
podem ser realizadas de forma manual ou automática por um computador. Tais etapas, 
elaboradas e executadas passo a passo, constituem o que se chama programa. Cada um dos 
passos mencionados é uma diferente instrução, ou ordem de comando, dada ao hardware, 
objetivando a realização de uma determinada ação (uma operação aritmética, uma 
transferência de informação, etc.). O programa é o conjunto de instruções. 
Consideremos que se deseja, por exemplo, somar 100 números e imprimir o 
resultado, conforme mostrado na figura 1.2. 
 
 
Figura 1.2 - Algoritmo para soma de 100 números. 
 
Uma pessoa é capaz de executar a soma, cujo algoritmo é apresentado na figura 1.2, 
através de variações sobre as etapas indicadas, mas um computador, sendo uma máquina, 
requer instruções precisas e completas sobre cada passo que deva executar. 
O grupo de passos relacionado na figura constitui um algoritmo: conjunto de etapas 
finitas, ordenadamente definidas, com o propósito de obter solução para um determinado 
problema. O termo "finitas" significa a necessidade de um requisito qualquer que 
estabeleça o final da execução do algoritmo; no exemplo dado, podemos observar, na etapa 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 3 
5, que a execução das etapas de 2 a 4 se repete enquanto N<100. Esta é, pois, a cláusula de 
parada. 
A figura 1.3 mostra um esquema da execução manual do programa gerado pelo 
algoritmo da figura 1.2, observando-se nele as etapas básicas. 
As etapas de um algoritmo são as instruções que deverão ser executadas por uma 
máquina (quando falamos de computadores); o conjunto de instruções constitui o que 
chamamos de programa. Um programa de computador é a formalização de um algoritmo 
em linguagem inteligível pelo computador. 
 
 
Figura 1.3 - Fases de processamento de um programa. 
 
Assim como o operador deve ter entendido os sete passos do programa apresentado 
na figura 1.2, um computador precisa entender cada instrução, de modo a executar 
corretamente a operação que se pretende. O operador entendia português, sua linguagem de 
comunicação com outras pessoas; os computadores têm uma linguagem própria - a 
linguagem binária. Nesta, os caracteres inteligíveis não são A, B, +, =, 0, 3, etc., mas 
apenas zero (0) e um (1). Todo dado coletado pelos computadores, as instruções por ele 
executadas, bem como os resultados de um processamento são sempre constituídos de 
conjuntos ordenados de zeros e uns. 
 
1.2 - ORGANIZAÇÃO BÁSICA DE UM SISTEMA DE COMPUTAÇÃO 
 
 Na descrição de sistemas de computação, é feita, freqüentemente, a distinção entre 
arquitetura e organização de computador. 
 
Arquitetura de computador refere-se àquelas especificações de um sistema visível para um 
programador de linguagem de máquina, (aquelas especificações que tem um impacto direto 
na execução lógica de um programa). 
 
Exemplos: O conjunto de instruções, o número de bits usados para representar vários tipos 
de dados (números, caracteres), mecanismos de entrada/saída e técnicas para memória de 
endereçamento. 
 
Organização de computador refere-se às unidades operacionais e suas interconexões que 
realizam as especificações da arquitetura. 
 
Exemplos: Os detalhes de hardware transparentes para o programador, tais como os sinais 
de controle, interfaces entre o computador e os periféricos e a tecnologia de memória 
utilizada. 
 
Em cada nível, o projetista está relacionado com a estrutura e a função: 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 4 
 
• Estrutura - A forma com que os componentes estão interrelacionados. 
• Função - A operação de cada componente individual como parte da estrutura. 
 
Em termos gerais, existem somente quatro funções básicas (figura 1.4) que um 
computador pode desempenhar: 
 
• Processamento de dados; 
• Armazenamento de dados; 
• Movimento de dados; 
• Controle. 
Figura 1.4 - Funções desempenhadas por um computador. 
 
Nota: Ciclos de Busca e de Execução de uma instrução 
 
Do ponto de vista mais simples, o processamento da instrução (ciclo de instrução) 
consiste em dois passos: a busca de instrução é uma operação comum para cada instrução, e 
consiste em leitura de uma instrução de uma localização em memória. A execução de 
instrução pode envolver várias operações e pode depender da naturezada instrução. 
Um ciclo de instrução inclui os seguintes subciclos: 
 
- de busca: Ler a próxima instrução de memória na UCP. 
- de execução: Interpretar o código de operação e executar a operação indicada. 
- de interrupção: Se interrupções estão habilitadas e uma interrupção ocorreu, salvar o 
estado de processo atual e cumpra-se a interrupção. 
 
 Este ciclo se repete indefinidamente até que o sistema seja desligado, ou ocorra 
algum tipo de erro, ou seja encontrada uma instrução de parada. 
 
COMPONENTES DE UM COMPUTADOR 
 
Virtualmente todos projetos de computadores contemporâneos estão baseados na 
arquitetura de Von Neumann, a qual tem três conceitos chave: 
 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 5 
1. Dados e instruções são armazenadas em um única memória de leitura e escrita. 
2. Os conteúdos desta memória são endereçáveis por localização, sem levar em 
conta o tipo de dados contido lá. 
3. Execução de uma instrução para a próxima ocorre num modo seqüencial (a 
menos que explicitamente modificado). 
 
Um ponto muito importante é sabermos como é uma descrição bem simples e 
possível de um computador. O computador (figura 1.5) é uma entidade que interage de 
algum modo com o ambiente externo (dispositivos periféricos ou linhas de comunicação). 
Figura 1.5 - Descrição sucinta de um computador. 
 
O sistema de computação é composto por três (3) componentes principais: 
 
- Hardware: corresponde à parte física do sistema de computação (figura 1.6). É o 
computador propriamente dito. Possui 2 componentes: 
. Sistema central: composto pela Unidade Central de Processamento (ou 
processador), Memória Principal e as suas interconexões; 
. Periféricos: podem ser de Entrada, Saída e/ou Armazenamento e as suas 
interconexões. 
Figura 1.6 - Parte física de um sistema de computação. 
 
- Software: corresponde à parte lógica do sistema de computação. São os programas (ou 
conjunto de instruções), organizados em um ou mais arquivos, que manda o computador 
executar tarefas que solucionam determinados problemas. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 6 
 
- Peopleware: são os usuários, as pessoas que trabalham com o computador. Podem ser 
digitadores, programadores, analistas, ou simplesmente usuários do computador. 
 
HARDWARE 
 
Organização do Processador (UCP) 
 
A UCP (figura 1.7) é a parte principal do computador responsável pelo 
processamento e execução de programas armazenados na memória principal. Sua função 
consiste em coordenar, controlar e realizar todas as operações (execução de instruções) do 
sistema. 
 
Suas partes principais são as seguintes (figura 1.8): 
 
- a unidade aritmética e lógica (UAL): realiza o cálculo real ou o processamento de dados 
(realiza as operações aritméticas e lógicas). 
 
- a unidade de controle (UC): controla o movimento de dados e instruções dentro e fora da 
UCP e controla a operação da UAL, de forma adequada e sincronizada. 
 
- os registradores: memória interna mínima e que consiste num conjunto de localizações de 
armazenamento. 
 
- barramento interno da UCP: é o caminho necessário para transferir dados entre os vários 
registradores e a UAL. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 1.7 - A UCP com o barramento do sistema. 
 
 Em resumo, as atividades realizadas pela UCP podem ser divididas em duas grandes 
categorias funcionais: 
• função processamento - encarrega de realizar as atividades relacionadas com a efetiva 
execução de uma operação, ou seja, processar; e 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 7 
• função controle - exercida pelos componentes da UCP que se encarregam das atividades 
de busca, interpretação e controle da execução das instruções, bem como do controle da 
ação dos demais componentes do sistema de computação (memória, entrada/saída, etc). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 1.8 - Estrutura interna da UCP. 
 
a) Organização dos Registradores 
 
Os registradores na UCP tem duas funções: 
 
- Registradores visíveis ao usuário: Estes permitem ou habilitam a máquina ou 
programador de linguagem Assembly a minimizar referências de memória principal 
aperfeiçoando uso de registradores. 
Estes podem se caracterizar nas seguintes categorias: de aplicação geral, de dados, 
de endereço e de códigos de condição. 
 
- Registradores de controle e de estado: Estes são usados pela unidade de controle para 
controlar a operação da UCP e por privilégio, programas do sistema operacional para 
controlar a execução de programas. Quatro registradores são essenciais a execução de 
instrução: contador de programa (CP), registrador de instrução (RI), registrador de 
endereço de memória (REM) e o registrador de dados da memória (RDM). 
 
b) Organização da Unidade Aritmética e Lógica 
 
Em termos muito gerais, a UAL (figura 1.9) é interconectada com o resto da UCP. 
Os dados são apresentados a UAL através de registradores, e os resultados de uma operação 
são armazenados também em registradores. A UAL também fixará flags como o resultado 
de uma operação. A unidade de controle fornece sinais que controlam a operação da UAL e 
o movimento dos dados dentro e fora da UAL. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 8 
 
 
 
 
 
Figura 1.9 - Entradas e saídas da UAL. 
 
c) Organização da Unidade de Controle 
 
A unidade de controle (figura 1.10) é aquela porção da UCP que, emite sinais de 
controle externos à UCP para causar a troca de dados com a memória e os periféricos. A 
unidade de controle também emite sinais de controle internos à UCP para mover dados 
entre registradores, fazer com que a UAL execute uma função especificada e para regular 
outras operações internas. 
Entrada à unidade de controle consiste no registrador de instrução, flags e sinais de 
controle de fontes externas (por exemplo, sinais de interrupção). 
É visto que a responsabilidade básica da unidade de controle é causar uma sucessão 
de operações elementares, chamada microoperação, a ocorrerem durante o curso de um 
ciclo de instrução. 
 Há duas maneiras, utilizadas no projeto e funcionamento de uma UC, que 
caracterizam conceitos diferentes de controle: 
 
- controle programado diretamente no hardware (“hardwired control”); e 
- controle por microprogramação. 
 
 A diferença básica entre os dois tipos está no processo de controle da realização do 
ciclo de instrução. No primeiro caso, cada etapa é realizada segundo uma lógica pré-
estabelecida, implementada fisicamente no hardware da área de controle. No caso de 
controle microprogramado, a interpretação e as conseqüentes etapas do ciclo de instrução 
são realizadas passo a passo por um programa, denominado microprograma. 
Figura 1.10 - Modelo da Unidade de Controle . 
 
d) Organização do barramento interno da UCP 
 
É uma rede de linhas de comunicação que conecta os elementos internos de uma 
UCP e também direciona-se para os conectores externos que ligam a UCP aos outros 
elementos de um sistema de computação. Os três tipos de barramentos da UCP são: 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 9 
 
- um barramento de controle: que consiste numa linha que sente sinais de entrada e outra 
linha que gera sinais de controle a partir da UCP (linha bidirecional); 
- um barramento de endereço: uma linha unidirecional da UCP que controla a localização 
de dados em endereços de memória; 
- um barramento de dados: uma linha de transferência bidirecional que tanto lê como 
escreve dados na memória. 
 
 Organização da Memória Principal 
 
A memória principal (ou memória primária)tem por finalidade o armazenamento 
de instruções e dados de programas que serão ou estão sendo executados pela UCP. É 
considerada como uma memória de trabalho para a UCP, sendo organizada em células com 
tamanho fixo e igual, cada uma identificada por um número denominado endereço. 
A MP pode ser acessada através de duas operações: 
 
a) leitura: ler da memória - significa requisitar à MP o conteúdo de uma determinada célula. 
O sentido de operação dá-se da MP para a UCP. 
 
b) escrita: escrever na memória - significa escrever uma informação em uma célula da MP. 
O sentido da operação dá-se da UCP para a MP. 
 
Classificam-se em dois grupos: 
 
. RAM (Memória de Acesso Aleatório) - dinâmica ou estática - esta memória volátil retém 
as instruções e dados de programas que estão sendo executados, tornando o tempo de 
leitura e escrita extremamente rápidos. 
 
. ROM ou ROM padrão - é a memória somente de leitura, pois as informações são gravadas 
no momento da fabricação e não mais serão alteradas. Contém basicamente informações 
necessárias para o funcionamento do computador, como rotinas que verificam se os meios 
físicos estão aptos para o funcionamento. Outras versões de ROMs são disponíveis - 
PROM, EPROM, EEPROM ou EAPROM e memória flash - as quais podem ser 
programadas, no mínimo, uma vez; são todas memórias não voláteis. 
 
A memória cache é uma memória (RAM estática) volátil de alta velocidade, 
localizada entre a UCP e a memória principal, usada com a finalidade de acelerar o 
processamento do subsistema UCP/MP, funcionando como um buffer da memória 
principal. 
 Toda vez que a UCP faz referência a um dado armazenado na memória principal, 
ela “olha” antes na memória cache. Se a UCP encontrar o dado na cache, não há 
necessidade do acesso à memória principal (cache hit); do contrário o acesso é obrigatório 
(cache miss ou cache fault). 
 Apesar de ser uma memória de acesso rápido (tempo de acesso é muito menor em 
relação à memória principal), seu uso é limitado em função do alto custo. 
 A memória cache existe apenas nas placas de microcomputadores com UCP’s mais 
rápidas, a partir do 386DX de 25 MHz. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 10
 
As memórias secundárias (auxiliares ou de massa) são um tipo de memória não 
volátil de grande capacidade de armazenamento, usada para guardar informações 
(instruções e dados de programas) que não serão imediatamente usadas pela UCP. 
Como exemplos de memórias secundárias tem-se as fitas magnéticas, discos (fixos e 
removíveis), disquetes, winchesters, tambores magnéticos, CD-ROM, e outros. 
 
 Organização da Entrada/Saída (E/S) 
 
Um subsistema de entrada/saída (E/S) deve, em conjunto, ser capaz de realizar duas 
funções: 
 
· receber ou enviar informações ao meio exterior; 
· converter as informações em uma forma inteligível para a máquina ou para o 
programador. 
 
a) Interfaces de E/S 
 
Também conhecido como controladoras de E/S, unidade processadora de 
periféricos, adaptador de periférico e canal de E/S. 
O interface (figura 1.11) é um conjunto de circuitos (hardware) e programas 
(software) que interligam um ou mais dispositivos de E/S e o subsistema UCP/MP para 
controlar e efetivar transferência de bits entre estes elementos. 
 
 
 
Figura 1.11 - Exemplos de configuração UCP/MP e um interface. 
 
O interface tem duas funções principais (figura 1.12): 
 
- Interface a UCP e a memória pelo barramento do sistema: Combinar as velocidades entre 
os dispositivos que operam em velocidades diferentes. 
- Interface a um ou mais dispositivos periféricos através de vínculos de dados: converter 
dados de um formato em outro. 
 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 11
 
Figura 1.12 - Exemplo de comunicação direta UCP/MP e periféricos, indicando-se 
as diferentes características de transmissão de cada um. 
 
Em geral, o interface é responsável pelas seguintes tarefas: controle e sincronização, 
comunicação com a UCP, comunicação com o dispositivo, armazenamento temporário de 
dados e detecção de erros. 
 
Há duas maneiras básicas de se realizar transmissão/recepção de dados entre os 
periféricos/interfaces e o subsistema UCP/MP bem como entre dispositivos interconectados 
entre si, local ou remotamente: 
 
1) a informação pode ser transmitida/recebida, bit a bit, um em seguida ao outro em uma 
única linha - isto caracteriza a transmissão serial (figura 1.13), que pode ser assíncrona ou 
síncrona (impressoras e terminais, teclado, mouse, modems); e 
 
 
 
Figura 1.13 - Exemplo de transmissão serial. 
 
2) a informação pode ser transmitida/recebida simultaneamente em grupos de bits em 
múltiplas linhas - isto caracteriza a transmissão paralela (figura 1.14) - periféricos de alta 
velocidade (fitas e discos magnéticos). 
 
 
Figura 1.14 - Exemplo de transmissão paralela. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 12
 
A escolha de um desses tipos para interligar a E/S ao subsistema UCP/MP depende 
de vários fatores, tais como: tipo e natureza do periférico, custo de implementação e 
velocidade de transmissão desejada. 
 
b) Dispositivos externos 
 
Operações de E/S são realizadas por uma ampla classificação de dispositivos 
externos que fornecem um significado de troca de dados entre o ambiente externo e o 
computador. 
Os diversos tipos de dispositivos que podem ser conectados em um computador são 
classificados em três categorias: 
 
1) os que transmitem/recebem informações inteligíveis para o ser humano - são adequados 
para estabelecimento de comunicação com o usuário. É o caso das impressoras, 
monitores de vídeo, plotters, multimídia, etc. 
2) os que transmitem/recebem informações inteligíveis apenas para a máquina - são 
adequados para comunicação máquina a máquina ou internamente a uma máquina. É o 
caso dos teclados, mouses, scanners, discos magnéticos, fitas magnéticas, discos óticos, 
sensores e atuadores em aplicação robótica; 
3) os que transmitem/recebem de/para outros dispositivos remotamente instalados, tais 
como os modems e regeneradores digitais. 
 
c) Métodos de realização de operações de E/S 
 
Há três métodos distintos de efetuar operações de E/S, isto é, de a UCP ler e 
escrever dados em um periférico específico: E/S por programa (memória compartilhada e 
E/S isolada), E/S com o emprego de interrupção e Acesso Direto à Memória. 
 
Organização de Interconexão de Sistema ou barramento do sistema 
 
O barramento de um sistema de computação (figura 1.15) é o elemento responsável 
pela interligação dos demais componentes (UCP, memória, E/S), conduzindo de modo 
sincronizado o fluxo de informações de uns para os outros, de acordo com uma 
programação de atividades previamente definida na unidade de controle. 
Em qualquer barramento as linhas podem ser classificadas em três grupos 
funcionais: 
- As linhas de dados fornecem um caminho para os dados (as instruções e os valores 
numéricos ou alfabéticos) se moverem entre os módulos do sistema. 
- As linhas de endereço são usadas para designar a fonte ou destino dos dados 
(valores que indicam a localização dos dados) no barramento de dados. Estas linhas são 
usadas geralmente para endereço de portas de E/S. 
- As linhas de controle são usadas para controlar o acesso para e o uso das linhas de 
dados e de endereço. Exemplos de alguns dos sinais de controle: de leitura, de escrita, de 
interrupção, de sincronização, entre outros). 
Embora exista uma variedade de implementações de barramentos diferentes, há 
alguns parâmetros básicos ou elementos de projeto que servem para classificar e diferenciar 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 13
barramentos. Os elementos-chave são: tipos de barramento (multiplexadoou dedicado), 
métodos de arbitragem (centralizado ou distribuído), temporização (assíncrona ou 
síncrona), largura do barramento (de dados e de endereço), tipo de transferência de dados 
(transferências de escrita (mestre para escravo), de leitura (escravo para mestre), de leitura 
modificada para escrita, de leitura após a escrita e por blocos) e tratamento de interrupções. 
No mercado existem diversos barramentos, entre os mais conhecidos temos: o 
UNIBUS da DEC, o MCA da IBM, o ISA da IBM (o mais usado e difundido), o EISA, o 
SBI da DEC. 
 
Figura 1.15 - Barramento do sistema. 
 
SOFTWARE 
 
O conceito de software refere-se a todos os elementos de programação de um 
sistema de computação, isto é, todos os programas, sejam de aplicação ou básicos do 
sistema, contrastando com a parte física e visível do sistema - o hardware. 
Podem ser classificados em softwares básicos ou softwares aplicativos. 
 
Softwares básicos 
 
São os programas que definem o padrão do equipamento, sendo necessários para o 
funcionamento do computador. 
Os tipos de software básico são: sistema operacional, ambiente operacional, 
linguagens de programação, tradutores e utilitários. 
 
a) Sistema operacional 
 
O sistema operacional (figura 1.16) é a interface básica entre usuário e o 
computador, pois é um gerenciador de recursos, alocando o hardware, o software e os 
dados. Em resumo, é um sistema (programa de controle mestre) que controla e coordena 
todas as operações básicas do sistema de computação. 
 
 
 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 14
 
 
 
 
 
Figura 1.16 - Funções do sistema operacional. 
 
Existem diferentes sistemas operacionais. Os mais conhecidos são o MS-DOS (para 
PC compatíveis), MUMPS, System 7, Unix, etc. 
Os sistemas operacionais são compostos por duas (2) partes no que diz respeito a 
localização física na memória do computador. 
Uma parte está gravada em chip de memória ROM onde estão as rotinas mais 
fundamentais de coordenação e tradução de fluxos de dados de fontes não similares 
(unidades de disco ou disk drives, os co-processadores que são chips de processamento que 
trabalha paralelamente à unidade central, mas com operações diferentes), como: acionar e 
ler a unidade de disco, colocar mensagens no monitor, verificar se o teclado está 
funcionando, etc.; sendo que a quantidade de rotinas gravadas na memória ROM depende 
de cada fabricante. 
 A outra parte do sistema operacional será carregada na memória RAM do sistema 
normalmente em duas (2) etapas: 
 
- A 1ª. é totalmente transferida para a RAM quando o sistema é ligado; 
- A 2ª. é carregada na memória à medida que é solicitada. 
 
Os sistemas operacionais são, às vezes, chamados de firmware, por serem 
programas que podem ser fornecidos pelo fabricante do equipamento. No caso de PC´s, 
 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 15
podem vir gravados na memória ROM ou na EEPROM. O padrão é virem em disquetes ou 
já gravados no winchester. 
Os programas que compõem o sistema operacional são, na maioria dos casos, 
escritos em linguagem de programação de baixo nível. 
Os sistemas operacionais podem ser classificados de acordo com suas características 
de funcionamento em: sistema monousuário, sistema multiusuário, sistema monotarefa e 
sistema multitarefa. 
 
b) Ambiente operacional 
 
São ambientes que adicionam recursos ao sistema operacional para permitir uma 
interface gráfica com o usuário, ou seja, é um sistema operacional com recursos gráficos. 
Exemplo: Windows 95. 
 
c) Linguagens de programação 
 
É um conjunto de símbolos (vocabulário) e regras (gramática) que especificam 
como transmitir informações entre usuários e computador. 
As linguagens de programação estão divididas em: linguagem de máquina, 
linguagem de baixo nível e linguagem de alto nível. 
 
A linguagem de máquina é baseada em código binário, em 0s e 1s. É utilizada 
diretamente pelo computador. 
Exemplo: 
 
 Linguagem de máquina Significado 
 
 0010 0001 1110 carrega no registrador 1 o conteúdo da posição de memória 14 
 0010 0010 1111 carrega no registrador 2 o conteúdo da posição de memória 15 
 0001 0001 0010 soma o conteúdo do registrador 1 com o conteúdo do registrador 
 2 e coloca no registrador 1 
 0011 0001 1111 armazena o conteúdo do registrador 1 na posição de memória 15 
 
A linguagem de baixo nível é uma simplificação da linguagem de máquina. Faz uso 
de códigos mnemônicos para expressar as instruções. Exemplo: Assembly. 
Exemplo: 
 
Linguagem de máquina Linguagem de baixo nível 
 
0010 0001 1110 LOAD R1, val1 
0010 0010 1111 LOAD R2, val2 
0001 0001 0010 ADD R1, R2 
0011 0001 1111 STORE R1, val2 
 
A linguagem de alto nível utiliza a combinação de um conjunto de símbolos de 
acordo com certas regras de sintaxe para expressar uma seqüência de operações de 
máquina. É uma linguagem que não exige conhecimento do código de máquina. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 16 
Exemplo: 
 
Linguagem de máquina Linguagem de baixo nível Linguagem de alto nível 
 
0010 0001 1110 LOAD R1, val1 val2 = val1 + val2 
0010 0010 1111 LOAD R2, val2 
0001 0001 0010 ADD R1, R2 
0011 0001 1111 STORE R1, val2 
 
Como exemplos de linguagens de alto nível tem-se: FORTRAN ( FORmula 
TRANslator), ALGOL (ALGOrithimic Language), COBOL (Common Business Oriented 
Language), BASIC (Beginner’s All-purpose Symbolic Instruction Code), PASCAL, 
LOGO, C, LISP, PROLOG, etc. 
 
d) Tradutores 
 
Mas, se os computadores trabalham internamente com a linguagem de máquina, 
como é que podemos fazer programas usando linguagem de baixo ou de alto nível? 
É que existem tradutores que lêem uma linguagem de programação e a transformam 
para linguagem de máquina. Existem 3 tipos de tradutores: 
 
- Montador: lê uma linguagem de baixo nível e transforma para linguagem de 
máquina. 
- Interpretador: lê uma linguagem de alto nível e transforma para linguagem de 
máquina. 
- Compilador: lê uma linguagem de alto nível e transforma para linguagem de 
máquina. 
 
Mas qual a diferença entre interpretador e compilador? 
 
Compilador 
 
1) Lê e analisa todo o programa fonte (escrito em linguagem de alto nível) e traduz 
para linguagem de máquina. 
2) Cria um programa objeto que corresponde às instruções em linguagem de máquina. 
3) Executa-se direto o programa objeto. 
4) Traduz tudo de uma vez. Se encontrar erro, é preciso voltar ao programa fonte, 
corrigir, recompilar e executar novamente o programa objeto. 
 
Interpretador 
 
1) Interpreta cada comando e executa. Faz linha a linha. Não traduz todo o programa 
para depois executar. 
2) Não gera programa objeto. 
3) Executa-se o programa fonte e sempre é necessário interpretar antes. 
4) Se encontrar erro avisa na hora. Então, se edita o programa fonte, corrige-se o erro e 
interpreta-se novamente. 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 17 
 
e) Utilitários 
 
São programas que ampliam os recursos do sistema facilitando o uso e auxiliando a 
manutenção de programas. Administram o ambiente oferecendo ferramentas ao usuáriopara organizar os discos, verificar memória, corrigir falhar, etc. 
Exemplos: 
 
 Save Smart: grava automaticamente a tela de trabalho do usuário quando a máquina 
é desligada e quando ela é ligada, retorna ao mesmo ponto onde estava. 
 Formatadores; 
 Programas de backup; 
 Compactadores de disco: Zip, Arj, etc. 
 Desfragmentadores: regravam de forma mais eficiente os arquivos que foram 
fragmentados pelo sistema operacional. Ou seja, faz com que um arquivo que foi 
armazenado em "pedaços" seja armazenado de forma contígua; 
 Antivírus: detectam a presença de algum vírus e tenta eliminá-lo. 
 
Estes programas recebem o nome de utilitários por serem úteis ao sistema 
computacional. 
 
Softwares aplicativos 
 
São os programas voltados para a solução de problemas do usuário. 
Podem ser de: 
 
- uso geral: são programas que podem ser utilizados em vários tipos de aplicações. 
Exemplos: editores de texto, gráficos, planilhas, gerenciadores de banco de dados, etc. 
 - uso específico: se destinam exclusivamente a um único tipo de aplicação. 
Exemplos: folha de pagamento, crediário, imposto de renda, cadastro, contas a pagar e 
receber, etc. 
 
CLASSIFICAÇÃO DOS SISTEMAS DE COMPUTAÇÃO 
 
A classificação ou diferenciação dos sistemas de computação mais usual é dada em: 
 
- sistemas de grande porte (mainframes e supercomputadores), 
- sistemas de médio porte (minicomputadores e estações de trabalho) e, 
- sistemas de pequeno porte (microcomputadores). 
 
Suas funções, conceitualmente, são idênticas, e a diferença reside nas escalas, ou 
seja, os sistemas maiores possuem mais capacidade e velocidade de processamento, são 
mais confiáveis, apresentam melhor assistência técnica e em geral podem ser utilizados por 
muitas pessoas. Os limites entre as classes são pouco nítidas e com os avanços tecnológicos 
tendem a ficar ainda mais difícil de ser distinguidos. O número de modelos disponíveis em 
cada classe é muito grande, fato este que levou esta classe a uma subdivisão com o adjetivo 
super (supermicros, superminis e supercomputadores). 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 18
A classificação de um computador pode ser feita de várias maneiras, como por 
exemplo: 
 
a) velocidade de processamento e volume de transações 
b) capacidade de processamento e número de usuários concorrentes 
c) capacidade de armazenamento 
d) tipo de CPU e tamanho da memória disponível 
 
- Sistemas de pequeno porte 
 
Os micros (é mais comum e popular denominá-los assim do que pela sua forma 
completa - microcomputador) podem ser do tipo de mesa (Desktop) ou de torre (PC - 
Personnel Computer = computador pessoal), laptops, Notebooks, sub-notebooks e os 
Palmtops. Exemplos de PCs: PC/XT (eXtend Technology), PC/AT 286 (Advanced 
Technology), PC/AT 80386 (386SX, 386SL), PC/AT 486 (80486SX, 80486SL, 
80486SLC2, Pentium). 
 
 - Sistemas de médio porte 
 
Minicomputadores, por sua vez, são máquinas projetadas para atender 
simultaneamente a demanda por execução de programas de vários usuários, embora a 
quantidade de usuários e de programas não seja tão grande quanto se pode encontrar em 
computadores de grande porte. Os sistemas VAX-11/780 da DEC são exemplos típicos de 
minicomputadores, bem como os sistemas AS/400 da IBM. 
 
Uma estação de trabalho é essencialmente um microcomputador projetado para 
realizar tarefas pesadas, em geral na área científica ou industrial, tais como complexas 
computações matemáticas, projetos com auxílio de computação (CAD - Computer Aided 
Design), fabricação com auxílio de computação (CAM - Computer Aided Manufacturing) e 
a composição, manipulação e apresentação de gráficos e imagens de altíssima resolução. 
Essas tarefas requerem mais velocidade de processamento, mais capacidade de memória 
(em tamanho e velocidade de transferência de informações) e dispositivo de vídeo de mais 
alta qualidade do que as características usuais dos microcomputadores. O sistema 
DECstation 5000/33 ou IBM RS/6000 são exemplos de estações de trabalho. 
 
- Sistemas de grande porte 
 
Os computadores de grande porte ou mainframes são sistemas projetados para 
manusear considerável volume de dados e executar simultaneamente programas de uma 
grande quantidade de usuários. Os sistemas IBM 3090 e Control Data CDC 6600 são 
típicos exemplos de computadores de grande porte. 
 
Finalmente, um supercomputador é projetado primariamente para atender a um 
único propósito: realizar grandes quantidades de cálculos matemáticos o mais rapidamente 
possível. Essas máquinas, como o sistema CRAY Y-MP e IBM 9021, podem realizar 
aplicações que demandam mais o processador que os demais componentes, tais como: 
previsão de tempo, simulação, modelagem tridimensional. Uma máquina dessas é capaz de 
CAPÍTULO 1 - NOÇÕES BÁSICAS SOBRE SISTEMAS COMPUTACIONAIS 19
realizar dois bilhões de operações matemáticas por segundo e manipular mais de um bilhão 
de células de memória. 
 
MEDIDAS DE DESEMPENHO DE SISTEMAS DE COMPUTAÇÃO 
 
A medida geral de desempenho de um sistema de computação depende 
fundamentalmente da capacidade e velocidade de seus diferentes componentes, da 
velocidade com que estes componentes se comunicam entre si e do grau de compatibilidade 
que possa existir entre eles (p.ex., se a velocidade da UCP de um sistema é muito maior que 
a da memória, então este sistema tem um desempenho inferior ao de um outro em que a 
UCP e a memória têm velocidades mais próximas). 
Considerando a existência de tantos fatores que influenciam o desempenho de um 
sistema de computação, desenvolveram-se diversos meios de medir seu desempenho. 
O desempenho dos processadores, em geral, é medido em termos da sua velocidade 
de trabalho; como seu trabalho é executar instruções, criou-se a unidade (sempre 
questionada por alguns) chamada MIPS - milhões de instruções por segundo, e também a 
unidade MFLOPS (millions of floating point operations per second) - milhões de operações 
de ponto flutuante por segundo, que é uma medida típica de estações de trabalho e de 
supercomputadores, pois estes costumam trabalhar mais com cálculos matemáticos. 
Já quando se trata de recuperação ou escrita de informações na memória, o tempo de 
acesso é uma unidade de medida mais apropriada, estando relacionada à velocidade de cada 
componente e à do canal de interligação entre os dois (UCP e memória). 
Tempo de resposta é uma medida ligada ao desempenho mais global do sistema e 
não de um ou outro componente. Trata-se do período de tempo gasto entre o instante em 
que o usuário iniciou uma solicitação ou interrogação e o instante em que o sistema 
apresentou ao usuário a sua resposta ou atendeu à sua solicitação. Por exemplo, o intervalo 
de tempo entre a solicitação de um saldo de conta em um terminal bancário e a 
apresentação no vídeo da resposta (o saldo da conta). 
Uma outra unidade de medida de desempenho é a vazão (throughput), que define a 
quantidade de ações ou transações que podem ser realizadas por um sistema na unidade de 
tempo. Por exemplo, a quantidade de atualizações que podem ser feitas em um sistema de 
controle do estoque de uma empresa. 
Quando estamos nos referindo à velocidade com que um determinado dispositivo de 
entrada ou de saída transfere ou recebe dados da UCP utilizamos uma unidade que mede a 
taxa de transferência que o canal de ligação (barramento) pode suportar, isto é, a quantidade 
de bits por segundo que podem trafegar pelo referido canal.

Outros materiais