DetailPage-MSS-KB

Base de Dados de Conhecimento

Artigo: 102873 - Última revisão: quarta-feira, 16 de Novembro de 2005 - Revisão: 3.0

Este artigo foi publicado anteriormente em PT102873

Nesta página

Sumário

Este artigo explica as convenções das especificações ARC (Advanced RISC Computing) utilizadas para definir o caminho para uma instalação do Windows NT em computadores baseados em processadores x86 da Intel e em computadores baseados em RISC. Este artigo é composto pelas seguintes secções:

  • Comparação de caminhos ARC em computadores baseados em x86 e em RISC
  • Diferenças entre a sintaxe MULTI(X) e SCSI(X) e a respectiva aplicação
  • Exemplos de caminhos ARC em computadores baseados em x86 e em RISC

Comparação de caminhos ARC em computadores baseados em x86 e em RISC

O caminho para cada instalação do Windows NT é descrito numa única linha do ficheiro BOOT.INI no caso dos computadores baseados em x86; no entanto, nos computadores baseados em RISC é utilizado um conjunto de quatro linhas nas opções BOOT- de firmware do computador, de modo a apontar para uma única instalação do Windows NT. Se existirem várias instalações do Windows NT no computador baseado em x86, o ficheiro BOOT.INI terá um caminho ARC para cada instalação existente. Durante o processo de arranque do sistema, ser-lhe-á pedido através de um menu de arranque que escolha a instalação a partir da qual pretende efectuar o reinício do computador.

Existem dois formatos básicos com que um caminho ARC poderá ser apresentado, um formato que começa por MULTI() e o outro que começa por SCSI(). Ambos os formatos são utilizados em computadores baseados em x86; no entanto, apenas o formato SCSI() é utilizado em computadores baseados em RISC:

Computadores baseados em x86

Seguem-se exemplos genéricos de dois caminhos ARC possíveis no ficheiro BOOT.INI:
multi(X)disk(Y)rdisk(Z)partition(W)\<winnt_dir>

- ou -

scsi(X)disk(Y)rdisk(Z)partition(W)\<winnt_dir>


em que X, Y, Z e W são números que identificam o item que se encontra à esquerda.

Ambos os exemplos de caminho ARC acima indicados permitem ao Windows NT localizar o directório %SystemRoot% para concluir o processo de arranque através do carregamento de ficheiros que residem nesse directório. Para obter informações adicionais, consulte a secção "Diferenças entre a sintaxe MULTI(X) e SCSI(X) e respectiva aplicação" abaixo.

Computadores baseados em RISC

Uma vez que a arquitectura baseada em RISC requer que o firmware aponte para áreas diferentes do sistema, o caminho ARC para uma instalação única do Windows NT é composto por um grupo de quatro definições com caminhos ARC (versus apenas uma linha na definição de caminho ARC no caso dos computadores baseados em x86). Cada caminho ARC que se seguir a uma das quatro definições começa por SCSI() depois do nome da definição:

   SYSTEMPARTITION scsi(X)disk(Y)rdisk(Z)partition(W)
   OSLOADER  scsi(X)disk(Y)rdisk(Z)partition(W)\os\<nt_dir>\osloader.exe
   OSLOADPARTITION scsi(X)disk(Y)rdisk(Z)partition(W)
   OSLOADFILENAME  \<winnt_dir>
				


Segue-se uma explicação de cada uma das linhas do grupo composto por quatro linhas acima indicado.

Definição 1 (SYSTEMPARTITION):
Define o caminho para SYSTEMPARTITION, a pequena partição da tabela de atribuição de ficheiros (FAT, File Allocation Table) que contém os executáveis OSLOADER.EXE e HAL.EXE:

scsi(X)disk(Y)rdisk(Z)partition(W)


Definição 2 (OSLOADER):
Define o caminho para o ficheiro OSLOADER. É o mesmo que o de SYSTEMPARTITION, mas inclui um descritor de caminho:

scsi(X)disk(Y)rdisk(Z)partition(W)\os\<nt_dir>\osloader.exe

em que <nt_dir> indica o directório no qual OSLOADER.EXE reside.


Definição 3 (OSLOADPARTITION):
Define a partição de arranque que contém os restantes ficheiros de sistema do Windows NT:

scsi(X)disk(Y)rdisk(Z)partition(W)


Definição 4 (OSLOADFILENAME):

Define o nome do directório de instalação do Windows NT (winnt_dir) sem qualquer letra de unidade:

\<winnt_dir>


Diferenças entre a sintaxe MULTI(X) e SCSI(X) e respectiva aplicação

Sintaxe MULTI(X)

A sintaxe MULTI(X) do caminho ARC só é utilizada em computadores baseados em x86. No Windows NT versão 3.1, este caminho só é válido para unidades IDE e ESDI; no Windows NT versão 3.5, 3.51 e 4.0 também é válido para unidades SCSI.

A sintaxe MULTI() indica ao Windows NT que deve confiar no BIOS dos computadores para carregar ficheiros de sistema. Isso significa que o sistema operativo vai utilizar chamadas de interrupção (INT) 13 de BIOS para localizar e carregar o ficheiro NTOSKRNL.EXE, assim como outros ficheiros necessários para reiniciar o Windows NT.

Os parâmetros X, Y, Z e W têm o seguinte significado:

  • X é o número ordinal do adaptador e deverá ser sempre 0 (consulte o texto abaixo para saber o motivo).
  • Y será sempre igual a 0 (zero) se o caminho ARC começar por MULTI(), visto que MULTI() invoca a chamada INT 13 conforme descrito acima e, por isso, não necessita das informações do parâmetro DISK().
  • Z é o ordinal do disco no adaptador e, regra geral, corresponde a um número entre 0 e 3.
  • W é o número da partição. É atribuído um número a todas as partições, excepto às partições do tipo 5 (expandidas de MS-DOS) e 0 (não utilizadas), sendo as partições principais numeradas em primeiro lugar e, em seguida, as unidades lógicas. NOTA: o primeiro número válido para W é 1, por oposição a X, Y e Z, que começam por 0 (zero).
Em teoria, esta sintaxe poderia ser utilizada para iniciar o Windows NT em qualquer unidade no sistema. No entanto, tal implica que todas as unidades estejam correctamente identificadas através da interface INT 13 padrão; uma vez que o suporte para esta funcionalidade varia de controlador de disco para controlador de disco e a maior parte dos BIOS de sistema só identificam um único controlador de disco através de INT 13, na prática, só será seguro utilizar esta sintaxe para iniciar o Windows NT a partir das duas primeiras unidades ligadas ao controlador de disco principal, ou das quatro primeiras unidades no caso de um controlador EIDE com dois canais.

Num sistema IDE puro, a sintaxe MULTI() funcionará, no máximo, para as quatro unidades dos canais principal e secundário de um controlador com dois canais.

Num sistema SCSI puro, a sintaxe MULTI() funcionará para as duas primeiras unidades no primeiro controlador SCSI (ou seja, o controlador cujo BIOS é carregado em primeiro lugar).

Num sistema SCSI e IDE misto, a sintaxe MULTI() funcionará apenas para as unidades IDE no primeiro controlador.

Sintaxe SCSI(X)

A sintaxe SCSI() é utilizada em computadores baseados tanto em RISC com em x86, sendo utilizada em todas as versões do Windows NT. A utilização da notação SCSI() indica que o Windows NT vai carregar um controlador de dispositivo de arranque e utilizar esse controlador para aceder à partição de arranque.

Num computador baseado em x86, o controlador de dispositivo utilizado é o NTBOOTDD.SYS, que poderá ser encontrado na raiz da unidade de sistema (regra geral, na unidade C) e que constitui uma cópia do controlador de dispositivo do controlador de unidade em utilização.

Num computador baseado em RISC, o controlador é incorporado no firmware, conforme requerido pelas normas de RISC, pelo que não é necessário qualquer ficheiro.

Os parâmetros X, Y, Z e W têm o seguinte significado quando a sintaxe SCSI() é utilizada:

  • X é o número ordinal do adaptador, tal como identificado pelo controlador NTBOOTDD.SYS.
  • Y é o ID SCSI do disco de destino.
  • Z é o número de unidade lógica (LUN, Logical Unit Number) SCSI do disco de destino. Este número corresponde quase sempre a 0 (zero).
  • W é o número da partição. É atribuído um número a todas as partições, excepto às partições do tipo 5 (expandidas de MS-DOS) e 0 (não utilizadas), sendo as partições principais numeradas em primeiro lugar e, em seguida, as unidades lógicas.

    NOTA: este primeiro número válido para W é 1, por oposição a X, Y e Z, que começam por 0.
Quando utilizar a notação SCSI(), o valor de X dependerá de NTBOOTDD.SYS. Cada um dos controladores SCSI existentes no Windows NT tem o seu próprio método de ordenação de controladores, apesar de, regra geral, ser respeitada a ordem carregada pelo BIOS nos controladores (isto é, se o BIOS estiver carregado).

Para além disso, se tiver vários controladores que utilizam diferentes controladores de dispositivo, só deverá contar aqueles que forem controlados pelo NTBOOTDD.SYS quando determinar o valor do parâmetro X. Por exemplo, se tiver um Adaptec 2940 (que utiliza o controlador AIC78XX.SYS) e um Adaptec 1542 (que utiliza o AHA154X.SYS) X será sempre igual a 0. O que muda será o ficheiro NTBOOTDD.SYS:

  • Se carregar o Windows NT a partir de uma unidade do Adaptec 2940, o NTBOOTDD.SYS corresponderá a uma cópia do AIC78XX.SYS.
  • Se carregar o Windows NT a partir de uma unidade do Adaptec 1542, o NTBOOTDD.SYS corresponderá a uma cópia do AHA154X.SYS.

Exemplos de caminhos ARC em computadores baseados em x86 e em RISC

Seguem-se exemplos de caminhos ARC válidos. Os dois primeiros exemplos são caminhos ARC em computadores baseados em x86. O terceiro exemplo é retirado de uma entrada de arranque única de um computador DEC Alpha AXP 150 baseado em RISC, mas deverá estar correcto para todos os computadores baseados em RISC com configurações de unidade semelhantes.

NOTA: se tiver vários caminhos ARC no ficheiro BOOT.INI e uma combinação de diferentes adaptadores SCSI no computador, conforme ilustrado nos exemplos 1 e 2 abaixo, terá copiar o controlador SCSI apropriado para o nome de ficheiro NTBOOTDD.SYS no directório raiz da partição do sistema (regra geral, a unidade C), antes de encerrar para reiniciar o computador a partir de uma instalação do Windows NT que resida numa unidade ligada ao outro controlador SCSI. Tal deve-se ao facto de, independentemente da unidade em que reside a outra instalação do Windows NT, o ficheiro NTBOOTDD.SYS residir sempre na partição do sistema.

Exemplo 1: vários controladores SCSI

Segue-se um exemplo de um computador baseado em x86 com os seguintes controladores e unidades instalados:

  • Dois adaptadores SCSI Adaptec 2940, cada um deles com duas unidades de disco rígido com 1 gigabyte (GB) nos ID 0 e 1.
  • Um controlador de disco SCSI Adaptec 1542, com duas unidades de disco rígido com 1 GB nos ID 0 e 4.
Cada unidade de disco rígido tem uma única partição principal com 1 GB. Para efeitos de explicação deste exemplo, as partições foram numeradas de 1 a 6, sendo que as partições 1 e 2 identificam os discos um e dois ligados ao controlador Adaptec 2940, as partições 3 e 4 identificam os discos anexados ao segundo controlador Adaptec 2940 e as partições 5 e 6 identificam os discos anexados ao controlador Adaptec 1542. Um dos caminhos ARC que se seguem será apresentado no ficheiro BOOT.INI, dependendo da partição em que o Windows NT foi instalado. Este exemplo parte do princípio de que o Windows NT foi instalado num directório denominado WINNT35:

Windows NT instalado no caminho ARC correspondente

Partition1(on 1st Adaptec 2940) multi(0)disk(0)rdisk(0)partition(1)\WINNT35
Partition2(on 1st Adaptec 2940) multi(0)disk(0)rdisk(1)partition(1)\WINNT35
Partition3(on 2nd Adaptec 2940) scsi(1)disk(0)rdisk(0)partition(1)\WINNT35
Partition4(on 2nd Adaptec 2940) scsi(1)disk(1)rdisk(0)partition(1)\WINNT35
Partition5(on Adaptec 1542)     scsi(0)disk(0)rdisk(0)partition(1)\WINNT35
Partition6(on Adaptec 1542)     scsi(0)disk(4)rdisk(0)partition(1)\WINNT35
				


NOTAS: no que diz respeito às partições 3 e 4, o ficheiro NTBOOTDD.SYS corresponde a uma cópia de AIC78XX.SYS; em relação às partições 5 e 6, o ficheiro NTBOOTDD.SYS corresponde a uma cópia de AHA154X.SYS. Como alternativa aos caminhos ARC da partição 1 e 2, poderá substituir os caminhos que se seguem, desde que tenha um ficheiro NTBOOTDD.SYS que corresponda a uma cópia do controlador AIC78XX.SYS:

Windows NT instalado no caminho ARC correspondente

Partition1(on 1st Adaptec 2940) scsi(0)disk(0)rdisk(0)partition(1)\WINNT35
Partition2(on 1st Adaptec 2940) multi(0)disk(0)rdisk(1)partition(1)\WINNT35
				


No entanto, o programa de configuração do Windows NT utiliza sempre a sintaxe MULTI() para estas duas primeiras unidades.

Exemplo 2: Ambiente IDE e SCSI misto

Segue-se um exemplo de um computador baseado em x86 com os seguintes controladores e unidades instalados:

  • Um controlador EIDE de dois canais com três unidades de 1 GB cada, duas no canal principal e uma no canal secundário.
  • Um controlador SCSI Adaptec 2940 com uma única unidade de disco rígido de 4 GB no ID 3.
As três unidades EIDE têm uma partição de 1 GB cada, a unidade SCSI tem quatro partições de 1 GB cada. Para efeitos de explicação deste exemplo, as partições foram numeradas de 1 a 7, sendo que as partições 1 e 2 identificam os discos um e dois no canal principal do controlador EIDE, a partição 3 no canal secundário e as partições 4, 5, 6 e 7 na unidade SCSI. Um dos caminhos ARC que se seguem será apresentado no ficheiro BOOT.INI, dependendo da partição em que o Windows NT foi instalado. Este exemplo parte do princípio de que o Windows NT foi instalado num directório denominado WINNT35:

Windows NT instalado no caminho ARC correspondente

Partition1 (pri. EIDE channel) Multi(0)disk(0)rdisk(0)partition(1)\WINNT35
Partition1 (pri. EIDE channel) multi(0)disk(0)rdisk(1)partition(1)\WINNT35
Partition3 (sec. EIDE channel) multi(0)disk(0)rdisk(2)partition(1)\WINNT35
Partition4 (on Adaptec 2940)   scsi(0)disk(3)rdisk(0)partition(1)\WINNT35
Partition5 (on Adaptec 2940)   scsi(0)disk(3)rdisk(0)partition(2)\WINNT35
Partition6 (on Adaptec 2940)   scsi(0)disk(3)rdisk(0)partition(3)\WINNT35
Partition7 (on Adaptec 2940)   scsi(0)disk(3)rdisk(0)partition(4)\WINNT35
				


NOTAS: o carregamento do Windows NT a partir das partições 4 a 7 requer um ficheiro NTBOOTDD.SYS que corresponda a uma cópia de AIC78XX.SYS.

Exemplo 3: Variáveis de arranque num computador DEC Alpha AXP 150

Num computador baseado em RISC, todos os caminhos de arranque são definidos através de firmware. Quando cria uma nova entrada de arranque para um computador baseado em RISC, o firmware orienta-o por uma série de pedidos de informação que o ajudarão a definir os caminhos correctamente; assim, a menos que esteja a editar uma entrada de arranque que já não esteja a funcionar, nunca deverá ter necessidade de editar directamente os caminhos ARC num computador baseado em RISC.

O exemplo que se segue é uma entrada de arranque num computador DEC Alpha AXP 150, com uma única unidade rígida no ID 0 e que se encontra dividida nas seguintes partições:

  • Uma partição do sistema com 4 MB.
  • Uma partição de arranque com 396 MB.
O Windows NT está instalado na partição de arranque de um directório denominado WINNT35 e o directório OSLOADER também se intitula OS\WINNT35, encontrando-se, contudo, na partição do sistema. A entrada de arranque contém os seguintes valores:

   SYSTEMPARTITION scsi(0)disk(0)rdisk(0)partition(1)
   OSLOADER  scsi(0)disk(0)rdisk(0)partition(1)\os\winnt35\osloader.exe
   OSLOADPARTITION scsi(0)disk(0)rdisk(0)partition(2)
   OSLOADFILENAME  \WINNT35
				

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
Palavras-chave: 
kbhowto kbusage KB102873
Partilhar
Opções de suporte adicionais
Fóruns de Suporte da Comunidade Microsoft
Contacte-nos directamente
Encontre um parceiro certificado Microsoft
Loja Microsoft