ARQUITETURA DE COMPUTADORES - 1866 Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: – 512 bytes/setor – 300 setores/trilha (em média) – 20.000 trilhas/superfície – 2 superfícies/prato – 5 pratos/disco Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 ≅ 30,72 GB Exemplo 02: – 512 bytes/setor – 500 setores/trilha (em média) – 100.000 trilhas/superfície – 2 superfícies/prato – 5 pratos/disco Qual será a capacidade deste disco? 6.11.3 – Operação do Disco: - 52 - ARQUITETURA DE COMPUTADORES - 1866 Operação de disco com múltiplos discos 6.11.4 – Organização do Disco – Setor de Boot: Nem toda a área disponível no disco pode ser utilizada para a gravação de arquivos de dados. É necessário reservar certas porções para operações necessárias a qualquer sistema, como o setor de boot e tabelas de alocação de arquivos. A BIOS (Basic Input/Output System) lê um setor específico do disco rígido, chamado se setor de boot mestre MBR (Master Boot Record) ou trilha zero. O setor de boot do HD armazena informações sobre o Sistema Operacional instalado, quais arquivos devem ser carregados para inicializar o sistema, etc. O setor de boot funciona como um ponto de partida, assim que o computador é ligado, a BIOS lê o setor de boot e segue as instruções que estiverem gravadas nela, que iniciarão o carregamento do Sistema Operacional. Geralmente o boot é feito através do HD, mas de acordo com o que for configurado na opção "Boot Sequence" no Setup, a BIOS pode procurar o boot também no disquete, no CD-ROM, num disco Zip ou até mesmo tentar dar boot através da rede. 6.11.5 – Organização do Disco – Endereçamento: Para que o sistema operacional seja capaz de recuperar dados rapidamente de um sistema de memória de armazenamento secundário, é necessária a utilização de um sistema de endereçamento, denominado genericamente de formatação. A formatação organiza trilhas e setores do disco em regiões onde os dados são, de fato, gravados. O tamanho destas regiões varia segundo o processo de formatação utilizado. - 53 - ARQUITETURA DE COMPUTADORES - 1866 6.11.5.1 – File Allocation Table - FAT FAT é a sigla para File Allocation Table (Tabela de Alocação de Arquivos). A primeira versão do FAT surgiu em 1977, para trabalhar com o sistema operacional MS-DOS, mas foi padrão até o Windows 95. Trata-se de um sistema de arquivos que funciona com base em uma espécie de tabela que indica onde estão os dados de cada arquivo. Esse esquema é necessário porque o espaço destinado ao armazenamento é dividido em blocos, e cada arquivo gravado pode ocupar vários destes, mas não necessariamente de maneira sequencial: os blocos podem estar em várias posições diferentes. Assim, a tabela acaba atuando como um "guia" para localizá-los. Entendendo os sistemas de arquivos FAT: Em um disco rígido, a área de armazenamento é dividida em trilhas. Cada trilha é subdividida em setores. Desse modo, é de se presumir que os sistemas de arquivos FAT trabalhem diretamente com esses setores. Mas não é bem assim. Na verdade, o FAT trabalha com grupos de setores, onde cada um recebe a denominação cluster (ou unidade de alocação). No caso do FAT16, cada cluster pode ter, comumente, um dos seguintes tamanhos: 2 KB, 4 KB, 8 KB, 16 KB e, por fim, 32 KB. A definição desse tamanho é uniforme, ou seja, não pode haver tamanhos variados de clusters em uma mesma unidade de armazenamento. Cada arquivo gravado utiliza tantos clusters quanto forem necessários para cobrir o seu tamanho. Se, por exemplo, tivermos um arquivo com 50 KB, é possível guardá-lo em dois clusters de 32 KB cada. Você deve ter percebido então que, neste caso, um cluster ficou com espaço sobrando. Esta área pode ser destinada a outro arquivo, correto? Errado! Acontece que cada cluster só pode ser utilizado por um único arquivo. Se sobrar espaço, este permanecerá vazio. Esse é um dos problemas do sistema FAT: desperdício. Normalmente, o tamanho dos clusters é definido no procedimento de instalação do sistema operacional, na etapa de formatação da unidade de armazenamento. - 54 - ARQUITETURA DE COMPUTADORES - 1866 Diferenças entre FAT16 e FAT32 O FAT16 utiliza 16 bits para endereçamento dos dados (daí o número 16 na sigla), o que, na prática, significa que o sistema de arquivos pode trabalhar com até 65536 clusters, no máximo. Para chegar a este número, basta fazer 216 = 65536. O sistema de arquivos FAT32 consegue solucionar esse problema por utilizar 32 bits no endereçamento de dados (novamente, aqui você pode perceber o porquê do número na sigla). No FAT16, quanto maior o espaço em disco, maior o tamanho do cluster. Com o FAT32, é possível usar clusters menores - geralmente de 4 KB mesmo com a unidade oferecendo maior capacidade de armazenamento. Desta forma, o desperdício acaba sendo menor. 6.11.5.2 – NTFS Para discos de maior capacidade, procuramos reduzir o tamanho do cluster, para evitar a fragmentação interna (a fragmentação interna ocorre quando a área mínima de gravação que definimos para arquivos não é totalmente utilizada), e a conseqüente perda de espaço de armazenamento. O NTFS (New Technology File System) foi desenvolvido pela Microsoft para ser utilizado pelo Windows NT e seus derivados (2000, XP, Vista, 7, Server 2003 e Server 2008) para ser um sistema de arquivos mais flexível, confiável, adaptável, seguro e veloz para operações com arquivos, como leitura, escrita e busca. O acesso é direto ao setor físico, de 512 bytes, independente do tamanho do disco. Com partições NTFS é ainda possível armazenar um maior volume de dados e suporte a nomes longos de arquivos. - 55 - ARQUITETURA DE COMPUTADORES - 1866 7 – Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um programa. Um programa, para ser efetivamente executado pelo processador, deve ser constituído de uma série de instruções de máquina. Para que a execução tenha início, as instruções devem ser armazenadas na memória cache. Ao nos referirmos ao processador, é comum adotarmos os termos UCP (Unidade Central de Processamento) ou CPU (Central Processing Unit). 7.1 – Tarefas da CPU: As tarefas da CPU consistem, então, em: Buscar na memória a instrução a ser executada; Interpretar que operação a instrução está explicitando; Buscar os dados onde estiverem armazenados; Executar efetivamente a operação com os dados e armazenar o resultado no local definido pela instrução; Reiniciar o processo, buscando a próxima instrução. 7.2 – Ciclo de Instrução: Estas etapas compõem o que se denomina um ciclo de instruçã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. Em outras palavras, a CPU é projetada e fabricada com o propósito único de executar sucessivamente pequenas operações, na ordem definida pela organização do programa. 7.3 – Funções da CPU: As atividades realizadas pela CPU podem ser divididas em duas grandes categorias funcionais: função processamento e função controle. A função processamento se encarrega de realizar as atividades relacionadas com a efetiva execução de uma operação, ou seja, processar. - 56 - ARQUITETURA DE COMPUTADORES - 1866 A função controle é exercida pelos componentes da CPU 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). 7.3.1 – Função Processamento: Anteriormente, já nos foi apresentado o conceito do que significa processamento de dados, a ação de manipular um ou mais valores (dados) em uma certa seqüência de passos, de modo a produzir um resultado útil (informação). Este resultado muda conforme o tipo de operação realizada. Processar o dado é executar com ele uma ação que produza algum tipo de resultado. Esta é, pois, a atividade-fim do sistema, uma vez que ele existe simplesmente para processar dados. Entre as tarefas comuns a esta função (processamento) podem ser citadas as que realizam: Operações aritméticas (+, -, x, :) Operações lógicas (and, or) Movimentação de dados Operações de entrada ou saída A seção de processamento é formada pela Unidade Lógica e Aritmética (ULA) e por diversos Registradores. 7.3.1.1 – Unidade Lógica e Aritmética (ULA): O dispositivo principal desta área de atividades (função processamento) de uma CPU é chamado de ALU (Arithmetic Logic Unit) ou ULA (Unidade Lógica e Aritmética). Os demais componentes relacionados com a função processamento são os registradores, que servem para armazenar dados (ou para guardar resultados) a serem utilizados pela ULA. A interligação entre estes componentes é efetuada pelo barramento interno da CPU. A ULA é o dispositivo da CPU que executa realmente as operações matemáticas com os dados, como por exemplo operações de incremento, decremento e complemento, além das operações aritméticas e lógicas já apresentadas. - 57 - ARQUITETURA DE COMPUTADORES - 1866 Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 – Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características: Tempo de acesso - por serem construídos com a mesma tecnologia da CPU, estes dispositivos possuem baixo tempo de acesso do sistema. Capacidade - os registradores são fabricados com a capacidade de armazenar um único dado, uma única instrução ou até mesmo um único endereço, fazendo, assim, com que sua capacidade seja de alguns poucos bits. Volatilidade - registradores são memórias de semicondutores e, portanto, necessitam de energia elétrica para funcionarem. Assim, registradores são memórias voláteis. Temporariedade - os registradores são memórias auxiliares internas à CPU e, portanto, tendem a guardar informação o mais temporariamente possível. Acumuladores ou registradores de dados armazenam os dados apenas o tempo necessário para sua utilização na ALU. Custo - devido à tecnologia mais avançada de sua fabricação, os registradores consistem no tipo de memória de maior custo. - 58 -