Entradas e Saídas
Dispositivos de Entrada e Saída
TECLADO
O teclado é um dispositivo de entrada de dados
composto de um conjunto de teclas, associadas aos caracteres utilizados para
escrita e para controle (letras, algarismos, sinais de pontuação, teclas de
movimentação de cursor, teclas de função, etc).
A parte visível do
teclado é o conjunto de teclas. Por baixo das teclas, existe uma matriz de
condutores que, quando uma tecla é pressionada, fecha contato entre dois de seu
condutores, de forma que um processador (processador de teclado) possa
identificar qual tecla foi pressionada. Uma vez identificada a tecla, esta
informação é codificada e enviada para o processador principal do
computador.
São utilizados mais usualmente dois códigos: ASCII
(American Standard Code for Information Interchange), o mais utilizado,
inclusive em microcomputadores, ou EBCDIC (Extended Binary
Coded Decimal Interchange Code), usado pela IBM em máquinas de grande porte.
A codificação é feita em duas fases:
- 1ª fase:
identificação da tecla e interpretação pelo software de controle do teclado
(parte da BIOS)
- 2ª fase: conversão do código identificador da tecla para
ASCII ou EBCDIC
MONITOR DE VÍDEO
O monitor de vídeo é um dispositivo de saída que utiliza uma tela semelhante
à de TV como meio de visualização das informações processadas pelo computador.
Também são utilizados monitores com tela de cristal líquido em microcomputadores
portáteis (laptops, notebooks, hand-helds, etc). A informação relativa
à imagem que deve ser exibida é gerada no computador e transmitida (em formato
digital, isto é, bits) para a interface de vídeo, onde os sinais
analógicos de vídeo que vão formar a imagem propriamente dita são produzidos.
Os monitores em geral tem suas telas de imagem construídas a partir de
um CRT - Tubo de Raios Catódicos (nos microcomputadores portáteis são geralmente
usadas telas de cristal líquido).Cada ponto da imagem precisa ser "impresso" na
tela. Isso é conseguido iluminando individualmente todos os pontos, um de cada
vez, ponto por ponto, linha por linha, do início ao fim da tela, então de volta
ao início e assim sucessivamente, ininterruptamente, sem parar. Como os pontos
iluminados esmaecem após alguns instantes, o computador ( o processador) precisa
ficar constantemente re-enviando a mesma imagem (ou imagens modificadas) para a
interface que por sua vez renova a informação de imagem ("refresca" a
tela).
Tipos de Monitor - modo de exibição
Os monitores eram
inicialmente utilizados para exibir apenas caracteres (modo caractere ou modo
alfanumérico) em uma única cor (geralmente um fósforo verde, algumas vezes
branco ou ainda laranja). Dessa forma, o que trafegava na interface
entre computador e monitor eram apenas códigos em bits (geralmente ASCII) que
representavam os caracteres que seriam exibidos. Na interface esses
códigos digitais eram decodificados e transformados em sinais analógicos (sinais
de vídeo) com os pontos que formariam cada caractere. Cada caractere possuia
poucos atributos, podendo apenas destacar brilho, exibir piscante
("blink") e reverso. Cada caractere requer apenas 7 bits no código
ASCII (ou 8 bits, no ASCII extendido) mais um bit para cada atributo (brilho
normal x realçado, normal ou piscante, normal ou
reverso).
Posteriormente, foram desenvolvidos monitores gráficos
(pixel oriented) em cores. Nesses monitores, a imagem passou a ser
constituída, não mais por caracteres de uma só cor que podiam ser tratados como
códigos ASCII, mas agora por pontos individualmente produzidos e transmitidos
para a tela e que vistos em conjunto formam a imagem gráfica. Cada um desses
pontos (chamados pixels - picture elements) passou a ter diversos
atributos, entre eles a cor. Cada cor exibida precisa ser identificada por um
código, bem como pelos bits de atributo (um bit por atributo para cada ponto).
Considerando apenas o atributo de cor, se tivermos 16 cores, serão necessários
16 = 24 códigos e portanto serão necessários 4
bits para identificá-las individualmente. Sendo 256 cores, serão 256 =
28 portanto 8 bits e assim por diante, até a
chamada "true color" com 64 milhões = 232 cores exigindo 32 bits.
Também em termos de resolução (número de pontos de imagem por tela) as exigências cresceram muito. Quanto mais pixels maior resolução, mas também maior número de bits a serem transmitidos em cada tela. A quantidade de informações que passou a trafegar entre computador e monitor aumentou de forma extraordinária, exigindo novas soluções de projeto para evitar que a exibição de informações na tela se transformasse em um "gargalo" (bottleneck) para o desempenho do sistema. A solução para esse problema veio com o desenvolvimento de interfaces mais elaboradas, possibilitando maior taxa de transmissão de informações (throughput), bem como pela utilização de verdadeiros processadores de imagem (interfaces dotadas de memória local e de processadores especializados para processamento gráfico). Dessa forma, o computador passou a transmitir primitivas gráficas (informações codificadas que eram transformadas em imagem gráfica definida em pixels apenas no processador gráfico da interface). O processo de refresh também passou a ser atribuição somente do processador de vídeo, não havendo necessidade do processador principal (o processador do computador) re-enviar uma imagem que não sofresse alterações. Mais ainda: o processo de envio das modificações de uma imagem passou a ser feito por diferença, isto é, o processador principal transmite apenas o que mudou e o processador de vídeo se encarrega de alterar a imagem de acordo.
De uma forma bastante simplificada, podemos calcular aproximadamente quantos bytes devem ser transferidos entre computador e interface para carregar uma determinada tela, pela seguinte expressão:
Modo caractere: nº de colunas x nº de linhas x nº de
bytes por caractere
Modo gráfico: nº de
colunas x nº de linhas x nº de bytes por pixel
No cálculo a
seguir apresentado como exemplo, no número de bits por caractere ou por
pixel foi considerado (por simplicidade) apenas o atributo
cor. O padrão VGA possui diversos outros atributos, entre eles diversos
"modos" que definem número de cores, modo alfanumérico ou gráfico, etc, que não
serão considerados nessa discussão.
Informações transferidas entre computador e interface
Monitores modo caractere | Nº colunas | Nº linhas | Nº caract. | Nº cores | bytes transferidos |
monocromático 80 colunas | 80 | 25 | 2.000 | 2 = 21 | 2 kbytes |
monocromático 132 colunas | 132 | 25 | 3.300 | 2 = 21 | 3,2 kbytes |
Monitores Gráficos | Nº colunas | Nº linhas | Nº pixels | Nº cores | bytes transferidos |
CGA | 320 | 200 | 64 k | 4 = 22 | 32 kbytes |
EGA | 640 | 350 | 218,75 k | 16 = 24 | 110 kbytes |
VGA | 640 | 480 | 300 k | 16 = 24 | 150 kbytes |
SVGA | 800 | 600 | 468,75 k | 256 = 28 | 468,75 kbytes |
SVGA | 1024 | 768 | 768 k | 64 k = 216 | 1,5 Mbytes |
SVGA | 1280 | 1024 | 1,25 M | 64 M = 232 | 5 Mbytes |
Consulte também: [Como funcionam os monitores de vídeo?]
IMPRESSORAS
Impressoras são dispositivos de saída que tem por finalidade imprimir em
papel ou filme plástico os resultados do processamento. Da mesma forma que os
monitores, a imagem impressa é resultado de muitos pontos impressos
individualmente que no conjunto formam o texto ou a imagem desejados. Também de
forma semelhante aos monitores, as impressoras evoluiram a partir de
dispositivos que imprimiam apenas caracteres em uma única cor para as modernas
impressoras capazes de reproduzir imagens sofisticadas, de alta resolução
gráfica, em milhares de cores.
Classificação:
- Impressoras
alfanuméricas
Esses equipamentos recebem do computador códigos que
representam caracteres alfanuméricos e portanto tem capacidade de imprimir
apenas esses caracteres. Geralmente é possível usar apenas uma fonte gráfica,
característica do equipamento. Algumas impressoras permitem trocar o dispositivo
de impressão, viabilizando a utilização de um pequeno número de fontes
gráficas.
- Impressoras gráficas
Esses
equipamentos recebem do computador a informação sobre os pontos
a serem impressos. Dessa forma, podem imprimir gráficos. Na impressão de textos,
os caracteres são impressos como pontos, que em determinada configuração formam
a imagem gráfica do caractere a ser impresso. Quando se utiliza uma impressora
gráfica para imprimir texto, existe a possibilidade de utilizar um grande número
de diferentes fontes gráficas, definidas por software.
Impressoras
Alfanuméricas:
- Unidade de medida de
velocidade: cps (caracteres por segundo)
-
Impressoras de Caracteres
Impressora
de Esfera e Impressora Margarida ("daisy
wheel")
- baixa
velocidade
- velocidade de impressão de 20 cps a 45
cps
- utilizam tecnologia derivada das máquinas de escrever
- tinham preço relativamente acessível, mas hoje estão
obsoletas
- usadas em sistemas de microcomputadores
- Impressoras de
linha
Impressoras de Cadeia de Caracteres e
Impressoras de Tambor
- maior velocidade de
impressão
- imprime de 80 a 132 caracteres
simultaneamente
- unidade de medida de velocidade: 1pm
(linhas por minuto)
- usadas em ambientes de grande
porte
Impressoras
Gráficas:
- Unidade de medida de
definição gráfica: dpi (dots per inch ou ppp - pontos por
polegada)
- Impressoras matriciais ou matriz de
pontos
Impressoras de impacto:
- com 9
ou 24 agulhas (80 a 400 cps)
- baixa definição gráfica (até 300
dpi)
- baixa velocidade
- permitem uso de papel
carbonado, viabilizando múltiplas cópias
- estão obsoletas,
reduzidas hoje às aplicações que requerem múltiplas cópias
Impressoras de jato de tinta ("ink
jet"):
- média resolução gráfica (até cerca de
1200 dpi)
- baixa velocidade
- permite cartuchos de tinta de várias cores,
viabilizando a utilização de cor
- baixo custo
- Impressoras de página
-
Unidade de medida de velocidade: ppm (páginas por minuto)
Impressoras
Laser
- 4 a 7 ppm - impressoras de
microcomputadores
- 20.000 ppm - impressoras de computadores
de grande porte
- alta definição gráfica (de 600 até 4800
dpi)
- hoje já estão disponíveis modelos com recurso de cor.
FITA MAGNÉTICA
Unidades de fita magnética são dispositivos de armazenamento de massa (isto
é, usados para armazenar grandes volumes de informação). As unidades de fita são
constituidas basicamente de um dispositivo de transporte (para a movimentação da
fita) e das cabeças magnéticas (que executam a gravação e leitura das
informações na fita), além da eletrônica de controle. A fita propriament dita é
uma fina superfície contínua feita em material plástico flexível, revestido de
material magnetizável.
Unidades de Fita são dispositivos de acesso
seqüencial. Essa é uma das principais razões para que as unidades de fita sejam
muito lentas. As fitas magnéticas são usadas principalmente como meio de
armazenamento off-line (para aplicação fora do processamento).
Atualmente, utiliza-se discos magnéticos durante o processamento e a fita para
armazenamento posterior de dados, geralmente para gerar cópias de segurança
(cópias de back-up). Desta forma, elas não interagem com o processador
durante a execução do programa, evitando o desperdício de tempo inerente à sua
lentidão.
As maiores vantagens das fitas são o baixo custo e a
portabilidade da mídia, proporcionando um baixo custo por byte
armazenado. Em compensação, suas maiores desvantagens são a lentidão, a baixa
confiabilidade da mídia e a pouca duração da gravação. O baixo custo por
byte amazenado ainda mantém um mercado para utilização da fita hoje,
embora venha sendo aceleradamente substituida por meios de armazenamento mais
modernos, especialmente meios ótico-magnéticos.
Os comprimentos
de fita mais utilizados são: 300, 600, 1200 e 2.400 pés.
Densidade pode ser definido como "quantos caracteres podem ser armazenados por unidade de comprimento da fita" e é medida em bpi (bytes por polegada). Por ex: 800, 1.600 ou 6.250 bpi.
Tipos de Fitas:
> Streamer - pequena,
parecida com uma fita cassete
> DAT (Digital Audio Tape) - grande
capacidade, menor que uma fita cassete
> Fitas Cartucho - grande
densidade: 30.000 bpi
> Rolo ou carretel
ORGANIZAÇÃO DA INFORMAÇÃO NAS
FITAS
Organização Física das Informações
As
informações nas fitas são organizadas em 9 colunas (8 bits + 1 bit de
paridade).
Obs.: Existiram também no passado fitas de 7 colunas (6 bits + 1
bit de paridade), hoje obsoletas.
Organização Lógica das Informações
I = MARCA REFLETORA - são marcas refletoras que indicam para a controladora o início e o fim da fita..
***** = TAPE MARK - é uma marca magnética de referência (não digital) inserida pela controladora de fita para permitir separar blocos afins (blocos que estão sendo gravados de uma só vez).
GAP - é uma marca de fim de bloco. Um gap força a unidade controladora a acelerar ou desacelerar a gravação. Em conseqüência, quanto maior o número de gaps, mais lento o acesso. É a própria unidade controladora quem produz os gaps.
BLOCO OU REGISTRO FÍSICO - é a unidade de armazenamento / transferência de informação. Os blocos são compostos de um ou mais registros lógicos (RL) e mais alguns bytes de controle inseridos pelo programa de controle, com dados necessários à identificação e recuperação do bloco. Os dados de controle (C) ocupam um espaço muito pequeno, que pode ser considerado desprezível em relação aos espaços ocupados pelos registros lógicos. Assim, pode-se considerar que o espaço ocupado por 1 bloco é aproximadamente igual ao de 1 registro físico (RF).
FATOR DE BLOCO (FB) é definido como o número de Fatores Lógicos contidos em um Registro Físico.
I | ***** | BLOCO | GAP | BLOCO | GAP | BLOCO | ***** | I |
I | **** | C | RF | GAP | C | RF | GAP | C | RF | **** | I |
I | **** | C | RL | RL | RL | RL | RL | GAP | C | RL | RL | RL | RL | RL | **** | I |
Assim: 1 Bloco ~ 1 Registro Físico = n Registros Lógicos e
FATOR
DE BLOCO (FB) = Nº DE REGISTROS LÓGICOS ÷ 1 REGISTRO FÍSICO
Exemplos:
a) um arquivo com 10 registros lógicos por registro físico terá Fator de
Bloco igual a 10; .
b) um arquivo com Fator de Bloco igual a 5 e contendo
15.000 registros lógicos terá 15.000 ÷ 5 = 3.000 registros físicos ou 3.000
blocos e portanto terá 2.999 gaps (ou 3.000, arredondando).
CONCLUSÃO: Se o arquivo do exemplo b), com 15.000 registros lógicos, tivesse
FB=10 como o do exemplo a), seriam apenas 1.500 registros físicos = blocos =
gaps em vez de 3.000 gaps, logo seria gasto menos espaço com
gaps e portanto menos espaço seria ocupado na fita.
Obs.1:
Quanto maior o fator de bloco, menor o número de gaps. Desta forma, o
espaço ocupado na fita é reduzido e a velocidade de transferência dos dados é
aumentada (os gaps provocam desacelerações na velocidade de transporte
da fita).
Obs.2: Cada unidade de fita tem valores-limite para o menor e o
maior fator de bloco admissível, estabelecidos (em projeto) pelo fabricante
.
DISCOS MAGNÉTICOS
Discos magnéticos são dispositivos para armazenamento de dados (que
independem de alimentação de energia e portanto permanecem gravados após ser
desligado o computador, mas que podem, a critério do usuário, ser apagados ou
alterados). Os discos magnéticos englobam os discos flexíveis ou
disquetes ("floppy disks") e os discos rígidos.
Um
disco magnético incorpora eletrônica de controle, motor para girar o disco,
cabeças de leitura / gravação e o mecanismo para o posicionamento das cabeças,
que são móveis. Os discos propriamente ditos são superfícies de formato
circular, compostos de finos discos de alumínio ou vidro, revestidas de material
magnetizável em ambas as faces.
O desenho a seguir ilustra um disco:
ORGANIZAÇÃO FÍSICA DA INFORMAÇÃO NOS DISCOS
As
informações são gravadas nos discos em "setores", distribuídos ao longo de
"trilhas" concêntricas marcadas magneticamente como setores circulares no disco,
conforme ilustração a seguir.
O processo de marcação magnética das trilhas e setores em um disco faz parte da "formatação" do disco. Esta formatação é dependente do sistema operacional que usará o disco. O sistema operacional DOS define que cada setor armazena 512 bytes. Todas as trilhas armazenam o mesmo número de bytes; desta forma, os dados na trilha mais interna estarão gravados com maior densidade, pois o espaço físico é menor.
TEMPO DE ACESSO
O tempo de acesso aos dados de um disco é
definido como o período decorrido entre a ordem de acesso e o final da
transferência dos dados. O tempo de acesso não é constante, variando em função
da posição relativa entre o braço atuador (que posiciona as cabeças de leitura e
gravação) e o setor que será lido e portanto só tem sentido falar em
tempo médio de acesso. Os tempos médios de acesso dos discos
atuais são da ordem de 10 ms e são resultado das seguintes operações:
TEMPO DE ACESSO = TEMPO DE (SEEK + LATÊNCIA + TRANSFERÊNCIA)
TEMPO DE SEEK - seek ou busca é o tempo gasto na interpretação da localização do dado no disco (endereço do dado no disco) pela unidade de controle e no movimento mecânico do braço que sustenta a cabeça megnética, até alcançar a trilha desejada. Este tempo é variável de acesso para acesso. os tempos típicos de discos rígidos atuais podem variar de aproximadamente 0 ms (tempo de seek mínimo, referente ao acesso a um setor localizado na mesma trilha onde no momento está a cabeça de leitura), 3 ms (para acesso a setores em trilhas adjacentes) a até 20 ms (tempo de busca máximo, referente ao acesso entre trilhas localizadas nas extremidades do disco). Este tempo é diretamente dependente da qualidade dos mecanismos eletromecânicos que comandam os braços atuadores. Discos de menores dimensões também tendem a ser mais rápidos, pois o percurso linear dos braços atuadores é menor.
TEMPO DE LATÊNCIA - tempo de latência (também chamada latência rotacional) é o tempo gasto entre a chegada da cabeça de leitura / gravação sobre a trilha e a passagem do setor desejado na posição da cabeça. Como o disco permanece constantemente girando, a cabeça magnética só pode ler ou gravar um dado quando o setor endereçado está imediatamente abaixo dela. Portanto, há que aguardar que o disco gire até que o setor endereçado fique posicionado abaixo da cabeça. Esse tempo depende diretamente da velocidade com que o disco gira. Discos rígidos atuais em geral giram a 5.400 rpm (rotações por minuto), o que significa que um giro completo se realiza em 1 ÷ (5400rpm ÷ 60s) = 11ms. Portanto, o tempo de latência poderá variar entre quase 0 ms (se o setor estiver exatamente na posição certa para ser lido) até 11 ms (se for necessário aguardar uma volta completa em um disco).
TEMPO DE TRANSFERÊNCIA - é o tempo consumido na transmissão
dos bits entre computador e disco e vice-versa. Este tempo depende da
interface e do disco, que definem o throughput (taxa de
transferência) do disco. Atualmente, dependendo da interface, o
throughput seria da ordem de até 33 Mbytes/s. Como um setor tem 512
bytes, em 1 ms se poderia transferir cerca de 33 setores e o tempo de
transferência de um setor seria da ordem de 15 ns.
Obs.: Os tempos
relativos a unidades (drives) de disquetes são muito maiores
que os acima indicados para discos rígidos. Drives de disquete
giram a aproximadamente 300 rpm e o throughput é da ordem de 500
kbytes/s; os tempos de acesso médios são da ordem de 60 a 100 ms.
DISCOS RÍGIDOS SELADOS MULTI-SUPERFÍCIE
Os primeiros
discos rígidos selados para microcomputadores foram projetados e construidos na
fábrica da IBM localizada em Winchester. Alguns autores atribuem a isso o motivo
deles terem sido apelidados de Winchester drives (unidades de disco
Winchester), denominação que perdurou por muito tempo, até que a
tecnologia de construção dos discos mudou. Hoje estes discos são conhecidos na
literatura apenas por "hard disks" ou HDs (em inglês, traduzindo-se
literalmente por "discos rígidos").
Obs.: Há também autores que atribuem o
nome a uma analogia com os famosos rifles 30/30 Winchester. A seguir é mostrado
o primeiro disco rígido (RAMAC) de 5 Mb distribuídos em 50 pratos com diâmetro
de 24", desenvolvido pela IBM em 1956, nos laboratórios de Almaden (CA), ao lado
de um moderno HD IBM Seascape de 5 Gb com 2.5".
A construção em forma de unidade selada, com ar filtrado eliminando as
partículas de pó, permitiu que as cabeças de leitura / gravação fossem
posicionadas a uma distância ínfima em relação às superfícies magnetizadas do
disco, de vez que a possibilidade de impurezas que se interpusessem entre a
superfície e a cabeça e pudéssem riscar o disco ou danificar a cabeça foi
eliminada. A proximidade entre cabeça e superfície, bem como a grande
uniformidade de superfície conseguida, possibilitaram obter uma grande densidade
de gravação dos dados nos discos rígidos selados. A utilização de atuadores
eletromecânicos de alta precisão também permitiu reduzir o espaço entre trilhas.
Os discos rígidos são pequenos e compactos, tem custo de armazenagem por Mbyte
muito baixo e alto desempenho (alta taxa de transferência e pequeno tempo de
acesso), oferecendo ainda segurança de armazenagem dos dados. Tudo isso permitiu
a construção de discos rápidos e com alta capacidade.
Os discos rígidos
atuais são construidos com muitas superfícies de gravação, montadas em torno de
um eixo comum. Os braços atuadores responsáveis pelo posicionamento das cabeças
de leitura / gravação são montados em uma única estrutura, de forma que os
braços se movem solidariamente.
Devido a esta conformação física, podemos verificar que, conforme uma determinada cabeça é posicionada sobre uma trilha, as demais cabeças estarão também posicionadas sobre as trilhas das outras superfícies que ficam localizadas à mesma distância do eixo central e portanto todas as trilhas localizadas a uma mesma distância do eixo central do disco poderão ser acessadas simultaneamente por todas as cabeças. Um conjunto de trilhas localizadas a uma mesma distância do eixo central pode ser visto espacialmente como se fora um cilindro, e é assim que são chamados. Dessa forma, num disco de quatro cabeças (quatro faces) o cilindro 10 seria composto de todos os setores localizados na trilha 10 da face 1, na trilha 10 da face 2, na trilha 10 da face 3 e na trilha 10 da face 4. Os dados gravados no mesmo cilindro (na mesma trilha porém em superfícies diferentes) podem ser acessados (lidos ou gravados) sem que o braço atuador das cabeças de leitura / gravação tenha que ser movido (como vimos na discussão sobre tempo de acesso, esta operação é relativamente lenta!).
DISCOS FLEXÍVEIS
As unidades de discos flexíveis
(floppy disks ou FDs) surgiram como uma solução para armazenamento de
dados a baixo custo em microcomputadores e substituiram com grandes vantagens o
armazenamento em fitas cassete que equipava os primeiros
microcomputadores. Os dicos flexíveis são feitos de poliester flexível
e sua capacidade atual de armazenamento é geralmente de 1,44 Mbytes.
Tipo | Tamanho | Nº faces | Densidade de trilhas | Nº de trilhas | Nº de setores | Capacidade |
LD | 5 ¼" | 1 | 48 tpi | 40 | 9 | 180 kb |
LD | 5 ¼" | 2 | 48 tpi | 40 | 9 | 360 kb |
LD | 3 ½" | 2 | 96 tpi | 80 | 15 | 720 kb |
HD | 5 ¼" | 2 | 135 tpi | 80 | 9 | 1.2 Mb |
HD | 3 ½" | 2 | 135 tpi | 80 | 18 | 1.44 Mb |
Obs.: Os discos flexíveis tem um orifício de índice que indica fisicamente o
início das trilhas.
CÁLCULO DO ESPAÇO DE ARMAZENAMENTO EM UM
DISCO
O espaço de armazenamento num disco pode ser calculado como
segue:
nº total de setores = nº de superfícies (= nº de cabeças) x nº de
setores por trilha x nº de trilhas (= nº de cilindros)
Como no DOS e Windows
cada setor tem 512 bytes, para obter o resultado em kbytes basta multiplicar o
número de setores por 0,5 (512 bytes = 0,5 kbyte) e para obter em Mbytes,
dividir então por 1.024.
Por exemplo, um disquete de 5 ¼" com 2
cabeças, 15 setores por trilha e 80 trilhas, teria 2 x 15 x 80 = 2.400 setores
de 512 bytes, portanto a capacidade seria de 1.200 kbytes ou aproximadamente 1,
2 Mbytes. Um disquete de 3 ½" com 2 cabeças, 18 setores por trilha e 80
trilhas, teria 2 x 18 x 80 = 2.880 setores de 512 bytes, portanto a capacidade
seria de 1.440 kbytes ou aproximadamente 1, 44 Mbytes.
Estes dados
aparecem nas especificações dos discos como:
nº de superfícies (= nº de
cabeças) = h (vindo de "heads", em inglês)
nº de setores por trilha
= s (vindo de "sectors", em inglês)
nº de trilhas (= nº de
cilindros) = c (vindo de "cylinders", em inglês)
ORGANIZAÇÃO DO ESPAÇO EM DISCO
A organização dos espaços
físicos dos discos no DOS é semelhante, tanto para os HD's quanto para os FD's.
Esta organização permite "mapear" cada setor físico para um setor lógico, de
forma que o sistema operacional e o BIOS (Binary Input Output System)
possam sempre fazer a correspondência entre o setor físico (hardware) e
o lógico referenciado pelo software. O DOS divide o disco como uma
seqüência de setores lógicos numerados de 0 a N. Esses setores lógicos
ocupam primeiro o setor 0 da trilha 0 da primeira cabeça, depois setor a setor,
cabeça a cabeça e por fim, trilha a trilha. Portanto, a organização lógica dos
dados nos discos tira proveito da característica de cilindro (em que as diversas
cabeças acessam simultaneamente os dados localizados na mesma trilha de todas as
superfícies - ver discussão no item sobre discos rígidos), numerando logicamente
os setores, cilindro a cilindro. Por exemplo, num disco de 4 faces, primeiro o
cilindro 0: trilha 0 face 1, depois trilha 0 face 2, trilha 0 face 3, trilha 0
face 4, e somente depois de esgotadas todos os setores e trilhas daquele
cilindro, passaria para o cilindro 1 seguinte: trilha da 1 face 1, trilha 1 da
face 2, trilha 1 da face 3, trilha 1 da face 4, e assim por diante. Essa
organização lógica facilita o acesso, reduzindo o tempo perdido com a
movimentação das cabeças. A seguir é exemplificado para o caso dos FDs de 360
kb, salientando-se que o mesmo esquema também se aplica aos HDs:
nº do
setor lógico = {(nº de setores por trilha) x [(nº da trilha x nº de faces) + nº
da face]} + (nº do setor físico -1)
Muitas vezes os setores em um HD
podem não ser numerados em seqüência linear perfeita. Como vimos, a leitura de
um setor no disco requer que a cabeça esteja colocada exatamente sobre o setor a
ser lido. Entre a leitura de um setor e o início da leitura do próximo setor,
haverá operações (transferência dos dados lidos e busca do próximo setor) que
consomem tempo. Se um setor é lido e o próximo setor a ser lido é aquele que o
segue imediatamente, o tempo para que a cabeça de leitura esteja posicionada
sobre o próximo setor será muito pequeno e possivelmente o disco ainda não
estará pronto para ler esse setor, o que obrigaria a ter que percorrer todos os
setores daquela trilha até ter de novo o setor procurado corretamente localizado
sob a cabeça. Para evitar esse fator de perda de tempo, é possível numerar
logicamente os setores de forma a se intercalar espaços entre um setor e o
próximo a ser lido. Por exemplo, os setores 0 a 17 em uma trilha poderiam ser
numerados seqüencialmente de forma que haja sempre um ou mais setores
intercalados entre os setores sequenciais, como no exemplo abaixo:
Os setores de 0 a 17 seriam gravados no disco assim: 00 0A 01 0B 03 0C 04 0D 05 0E 06 0F 08 10 09 11
Essa organização se denomina Fator de Interleaving (no caso do exemplo, igual a 2) e permite ganhar tempo no acesso a dados organizados seqüencialmente no disco. Ver desenho anterior no item Organização do Espaço em Disco.
No DOS, o setor 0 é o setor de boot, a ser carregado na memória no instante da inicialização do sistema; os setores 1 e 2 contém a FAT (File Allocation Table ou Tabela de Alocação de Arquivos) e os setores 3 e 4 contém um back-up (uma cópia de segurança) da FAT; os setores 5 a 11 são reservados para o diretório raiz (root directory); os setores lógicos 12 em diante são livres para arquivos e diretórios.
Obs.: A organização lógica dos dados de um arquivo no disco só se preserva na gravação inicial dos dados no disco. À medida que arquivos são apagados, alterados e regravados, o sistema de gerenciamento de arquivos do DOS e do Windows aproveitam setores que eventualmente ficaram vagos, dentro de um critério de ocupar primeiro os setores de menor numeração lógica. Depois de algum tempo, os arquivos não mais estarão arrumados em uma seqüência lógica, o que fará com que o acesso seqüencial aos dados desse arquivo já não mais se faça no mesmo cilindro ou em cilindros adjacentes. Conseqüentemente, os movimentos de cabeça do disco serão mais amplos e lentos e o tempo de acesso piora. Esta situação é chamada "fragmentação" dos arquivos. Existem programas utilitários (utility programs) para "re-arrumar" os arquivos nos discos, chamados "defragmentadores".
Estes aspectos serão discutidos em detalhe no capítulo referente aos