Processo de inicialização e restrições do disco rígido no Windows NT

Traduções deste artigo Traduções deste artigo
ID do artigo: 114841 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve as restrições de tamanho do disco rígido no Windows NT e no Windows NT Advanced Server. Para entender estas restrições, é necessário entender as estruturas de dados, que definem as partições do disco, e as interações entre o Windows NT e a interface de BIOS do sistema, usada durante o processo de inicialização do sistema operacional e do hardware.

Mais Informações

A tabela de partição

A estrutura de dados que descreve as partições do disco rígido é conhecida como tabela de partição. Ela consiste de quatro entradas de 16 bytes, no máximo. Cada entrada tem 10 campos que descrevem os seguintes atributos de uma partição:
   CAMPO             TAMANHO
   -----------------   --------
   Sinalizador de inicialização           1 byte
   Lado inicial       1 byte
   Cilindro inicial   10 bits
   Setor inicial     6 bits
   Indicador do sistema    1 byte
   Lado final       1 byte
   Cilindro final     10 bits
   Setor final       6 bits
   Setores relativos    4 bytes
   Número de setores   4 bytes
				

Indicador do sistema

O Indicador do Sistema é usado para especificar o tipo de sistema de arquivos contido na partição. Alguns dos valores comuns são:
   VALOR   SISTEMA DE ARQUIVOS
   -----   -----------
   0x0B    Primário  Partições Fat32 até 2047 GB
   0x0C    Igual a 0x0B, usa extensões de Endereços de Blocos Lógicos Int 0x13
   0x0E    Igual a 0x06, usa extensões de Endereços de Blocos Lógicos Int 0x13
   0x0F    Igual a 0x05, usa extensões de Endereços de Blocos Lógicos Int 0x13
   0x05    Partição estendida
   0x06    Formato FAT (tabela de alocação de arquivos) do BIGDOS.
   0x07    IFS (sistema de arquivos instaláveis), por exemplo: HPFS e NTFS
				
Quando uma partição faz parte de um conjunto FT (tolerante a falhas), o Windows NT define o maior bit do Indicador do Sistema para diferenciá-lo da partição não FT do mesmo tipo. Por exemplo, o valor do Indicador do Sistema de uma partição FAT FT é igual a 0x86 e de uma partição NTFS FT, igual a 0x87.

Quando um membro de um conjunto FT é desabilitado, o Windows NT define os dois maiores bits. Por exemplo, o valor de Indicador do Sistema de uma partição FAT desabilitada é igual a 0xC6 e de uma partição NTFS FT, igual a 0xC7.

Sinalizador de inicialização

O Sinalizador de Inicialização indica qual partição está ativa ou é inicializável. Somente uma partição pode estar ativa por disco. O valor do Sinalizador de Inicialização da partição ativa está definido para 0x80. Outras partições no disco são definidas para 0x00. O MBR - registro mestre de inicialização - (descrito posteriormente com mais detalhes) busca esse sinalizador para localizar o setor de inicialização ativo.

Lado inicial e final, Cilindro inicial e final e Setor inicial e final

Os campos Lado inicial e final, Cilindro inicial e final, e Setor inicial e final são muitos importantes com relação a como o Windows NT interage com o disco.

O número máximo de Lados (cabeçalhos de leitura/gravação) que podem ser representados com 1 byte é 256. O número máximo de Cilindros que podem ser representados com 10 bits é 1024. O número máximo de Setores que podem ser representados com 6 bits é 63, já que Setores iniciam a contagem em 1 (enquanto Cilindros e Lados iniciam a contagem em 0).

O valor do Cilindro, representado por 10 bits, é muito grande para caber em um único byte. Para armazenar 10 bits, dois bits são obtidos do byte que armazena o valor do Setor de 6 bits.

Com um tamanho de setor padrão de 512 bytes, os 24 bits usados para gravar os endereços iniciais e finais do setor são traduzidos em uma partição do maior tamanho possível, ou seja, 7,8 GB (8.455.716.864 bytes), que pode ser descrita com esses campos. Isto é especialmente importante considerando que os mesmos tamanhos do campo são empregados pela interface BIOS do INT 13, a qual define como o BIOS do sistema interage com o disco rígido.

Setores relativos

Os Setores Relativos representam o deslocamento do início da tabela de partição até o início da partição, contando por setores.

Número de setores

O Número de Setores representa o número total de setores na partição.

OBSERVAÇÃO: os campos Setores Relativos e Número de Setores têm tamanho de 32 bits cada um. Na maioria das condições, juntos, eles contêm as mesmas informações que os valores de Lado inicial e final, Cilindro inicial e final, e Setor inicial e final, representados com um total de 24 bits para Inicial e 24 bits para Final.

Processo de inicialização do Windows NT

Nos computadores com base em Intel, o BIOS do sistema controla o processo de inicialização inicial do sistema operacional. Depois do POST inicial, quando os componentes de hardware são inicializados, o BIOS do sistema identifica o dispositivo de inicialização. Geralmente, se trata de um disquete ou do disco rígido. No caso do disco rígido, o BIOS lê o primeiro setor físico no disco, chamado setor mestre de inicialização, e carrega uma imagem desse setor na memória. Então, o BIOS transfere a execução para essa imagem do setor mestre de inicialização.

O MBR contém a tabela de partição e uma pequena quantidade de código executável. O código executável examina a tabela de partição e identifica a partição ativa (ou inicializável). O MBR localiza o local inicial da partição ativa no disco e carrega na memória uma imagem do primeiro setor, chamado Setor de Inicialização. Então, o MBR transfere a execução para esta imagem do Setor de Inicialização.

Enquanto o MBR é, geralmente, independente do sistema operacional, o Setor de Inicialização da partição ativa é dependente tanto do sistema operacional quanto do sistema de arquivos. No caso do Windows NT e do Windows NT Advanced Server, o Setor de Inicialização é responsável por localizar o arquivo executável, NTLDR, que prossegue com o processo de inicialização. Os únicos serviços de disco disponíveis para o código do Setor de Inicialização nesse estágio da inicialização do sistema são fornecidos pela interface BIOS do INT 13. É necessário que o código do Setor de Inicialização localize as estruturas de dados do NTLDR e do sistema de arquivos, como o diretório raiz, a FAT, no caso de um volume FAT do MS-DOS, ou a MTF (Tabela Mestra de Arquivos), no caso de um volume NTFS. Estes devem ser representados dentro de uma área do disco endereçável pela estrutura de lado, cilindro e setor de 24 bits usada pela interface BIOS do INT 13 e pela tabela de partição. Isto limita o tamanho da partição do sistema para 7,8 gigabytes, independentemente do sistema de arquivos usado.

OBSERVAÇÃO: outras restrições talvez possam ser aplicáveis dependendo do hardware e do sistema de arquivos do computador. Algumas das restrições são descritas a seguir.

Para acomodar as partições maiores que 7,8 gigabytes, o Windows NT ignora os valores nos campos de endereço de setor Inicial e Final da tabela de partição em favor dos campos Deslocamento Relativo e Número de Setores. Isto fornece oito bits adicionais para representar setores. Os bits adicionais permitem que as partições sejam descritas com setores de até 2^32.

Com um tamanho de setor padrão de 512 bytes, os 32 bits usados para representar os campos Deslocamento Relativo e Número de Setores são traduzidos em uma partição do maior tamanho possível, ou seja, 2 terabytes (2.199.023.255.552 bytes).

Ao particionar um disco, o Windows NT gravará os valores corretos para os campos da tabela de partição sempre que possível. Quando o número total de setores ultrapassa o número que pode ser descrito na notação de Lado, Cilindro e Setor, o Windows NT grava os valores máximos permitidos para esses campos na tabela de partição. Isto evita que o BIOS do sistema tente calcular os endereços Inicial e Final com base em dados incorretos.

Por exemplo, considere que você tem uma unidade SCSI de 3,5 GB anexada a um controlador SCSI Adaptec da série 154x. Se o recurso de tradução do setor estendido estiver desabilitado no adaptador, ele poderá reportar as seguintes características de disco para o BIOS do sistema:
   Cilindros: 1023, Lados: 64, Setores: 32
				
traduzido para 1 gigabyte, aproximadamente. Com a tradução estendida habilitada, o dispositivo poderá ser reportado com as seguintes características:
   Cilindros: 435, Lados: 255, Setores: 63
				
traduzido para 3,5 GB, aproximadamente.

Uma vez que está em execução, o Windows NT usa os drivers SCSI para interagir diretamente com o disco sem usar a interface BIOS do INT 13. Sendo assim, durante uma operação normal, os parâmetros BIOS não são nem um pouco importantes. Entretanto, as diferenças são críticas se o disco for formatado com uma única partição e usado como unidade de inicialização.

Sem a tradução estendida, o Windows NT observa que o disco é maior do que os parâmetros BIOS indicam. Quando o Windows NT particiona a unidade durante a instalação inicial, os endereços dos setores inicial e final são preenchidos com os maiores valores possíveis. Isso torna impossível o funcionamento correto do MBR, ainda que a unidade tenha capacidade inferior a 7,8 gigabytes.

Com a tradução estendida, o Windows NT poderá gravar valores válidos para os endereços inicial e final na tabela de partição e, portanto, a partição permanecerá inicializável.

As seguintes mensagens de erro talvez sejam exibidas quando a tradução estendida não estiver habilitada e o MBR não localizar o Setor de Inicialização da partição ativa:
Erro ao carregar o sistema operacional.
-ou-
Sistema operacional ausente.

Sistemas de arquivos

O FAT e o HPFS têm limites internos de 4 GB devido ao fato de usarem campos de 32 bits para o armazenamento de tamanhos de arquivos. O NTFS usa campos de 64 bits para todos os tamanhos, permitindo que suas estruturas de dados identifiquem os volumes de até 2^64 bytes (16 exabytes ou 18.446.744.073.709.551.616 bytes).

Esse valor é, na teoria, o limite para o sistema de arquivos NTFS. Os limites práticos relacionados ao tamanho máximo da partição permitido, descrito acima, limitam o tamanho de uma partição NTFS em aproximadamente 2 terabytes. Como os campos de 32 bits da tabela de partição se referem ao número de setores na partição, os discos com maiores tamanhos de setor são traduzidos para maior tamanhos de partição permitidos. Atualmente, o Windows NT é compatível com tamanhos de setor de até 4 kilobytes. Com setores de 4 KB, o Windows NT é compatível com uma partição de 16 terabytes. Quando novos esquemas de hardware e software estiverem disponíveis, o NTFS poderá controlar volumes substancialmente maiores.

Tipos de unidades e controladores

As unidades IDE usam uma estrutura de dados diferente para representar o número de cilindros, cabeçalhos e setores por trilha da usada pela tabela de partição e a interface BIOS do INT 13. De acordo com as especificações IDE, o número máximo de cilindros é 65536, o número máximo de cabeçalhos é 16 e o número máximo de setores por trilha é 255. Isto dá um máximo de 136,9 gigabytes, mas como a interface BIOS/IDE foi restrita para uso com o menor denominador comum, o resultado é um limite de aproximadamente 528 MB para uma unidade IDE em um computador com base em Intel com barramento ISA. Há novas unidades e drivers que usam uma "Tabela de parâmetros de unidade avançada" para traduzir entre o layout de setor de lógica interno na unidade IDE e o layout de setor de lógica endereçável pela interface BIOS do INT 13. Esses drivers e dispositivos são compatíveis com os discos maiores. O conjunto de comandos SCSI usa sua própria forma de endereçamento de setor que atualmente é compatível com discos com tamanho de até 7 gigabytes, aproximadamente.

Volumes tolerantes a falhas do Windows NT

Pelo uso de conjuntos de volumes e conjunto de distribuição, o Windows NT e o Windows NT Advanced Server permitem a construção de volumes lógicos a partir de várias partições de discos físicos. Essa técnica permite que o Windows NT supere o problema de limitações de hardware físico impostas por vários controladores de disco e construa um volume lógico maior do que um único disco poderia dar suporte.

OBSERVAÇÃO: Um volume lógico é construído para ser semelhante a uma partição de disco físico e, ao mesmo tempo, também é necessário que esteja em conformidade com o layout da tabela de partição descrito acima. Isso significa que é necessário que uma construção tolerante a falha, como um conjunto de volumes, não tenha mais do que um total de 2^32 setores (ou 2 terabytes a 512 bytes por setor).

Propriedades

ID do artigo: 114841 - Última revisão: segunda-feira, 23 de abril de 2007 - Revisão: 2.0
A informação contida neste artigo aplica-se a:
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Advanced Server 3.1
Palavras-chave: 
kbother KB114841

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com