Artigo: 115486 - Última revisão: terça-feira, 1 de Março de 2005 - Revisão: 3.3 Como controlo de dispositivo controlador carga encomenda
Nesta páginaSumárioWindows NT concebido o conceito que o primeiro controlador de reclamar um dispositivo obtém a propriedade desse dispositivo. Esta propriedade pode ser partilhada ou pode ser exclusivo; isto é para o controlador de dispositivo claiming. Se o dispositivo é pedido exclusivamente por um controlador de dispositivo, quaisquer outras tentativas para reclamar o dispositivo por controladores de dispositivo carregado posteriormente falharem. Devido isto, é imperativo que a ordem em que controladores de dispositivo são carregados pode ser modificada pelos autores de controlador de dispositivo. Este artigo descreve os dois métodos que pode utilizar para controlar a ordem em que controladores de dispositivo são carregados. Mais InformaçãoExistem dois métodos que pode utilizar para controlar a ordem em que controladores de dispositivo são carregados. Ambos os métodos tirar partido das entradas do registo que pode ser encontrado em \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control. O primeiro método consiste em Modificar a ServiceGroupOrder. O segundo método consiste em atribuir valores de código que determinam a ordem de carregamento de acordo com o GroupOrderList do controlador. Os valores de tag de tipo de início e de nomes de grupos estão HKLM\SYSTEM\CurrentControlSet\Services\ <drivername> chave que deve ser adicionado antes dos valores podem ser listados na lista de ordem de grupo. Estes dois métodos funcionam apenas para controladores de dispositivo que tenham um valor inicial de 0 (SERVICE_BOOT_START) ou 1 (SERVICE_SYSTEM_START). Em todos os casos, controladores de dispositivo com um valor de início de carregamento 0 antes de quaisquer controladores de dispositivo com um valor inicial de 1 tentativa para carregar. Método 1: ServiceGroupOrderO ServiceGroupOrder contém uma lista de nomes de grupo pela ordem em que serão carregadas. Seguem-se o conteúdo não tendo sido modificado ServiceGroupOrder:Miniport SCSI Acordo com a ServiceGroupOrder, controladores de dispositivo in a carga de "Classe SCSI" grupo depois de todos os controladores de dispositivo do grupo "Disco primário" e antes de controladores de dispositivo in a carga do grupo "unidade de CD-ROM SCSI class". Quanto maior for o grupo de um controlador de dispositivo consta da lista, o mais cedo carrega. A lista de ServiceGroupOrder é analisada duas vezes. Primeiro, todos os controladores de dispositivo com um valor inicial de carga 0; depois, todos os controladores de dispositivo com um valor inicial de 1 carga. Deste modo, um controlador de dispositivo com um valor inicial de cargas 0 antes de qualquer controlador de dispositivo com um valor inicial de 1, independentemente do que a posição na lista ServiceGroupOrder. porta Disco principal Classe de SCSI Unidade de CD-ROM SCSI classe filtro sistema de ficheiros de arranque Base Porta de ponteiro Porta de teclado Classe de ponteiro Classe de teclado Init vídeo Vídeo Guardar vídeo sistema de ficheiros Registo de eventos Controladores de transmissões em sequência NDIS TDI NetBIOSGroup SpoolerGroup É possível que o autor do controlador de dispositivo editar o ServiceGroupOrder. Ao fazê-lo, um novo grupo pode ser criado em qualquer lugar na lista. Um bom exemplo pode ser um controlador de dispositivo de SCSI de classe denominado "SAMPLDRV" necessitar de carregar antes de "SCSIDISK" porque SCSIDISK é um dispositivo que necessita SAMPLDRV para reclamar que afirma. Seguem-se entradas do registo do SCSIDISK:
\registry\machine\system\currentcontrolset\services\scsidisk
Type = REG_DWORD 0x00000001
Start = REG_DWORD 0x00000000
Group = SCSI class
ErrorControl = REG_DWORD 0x00000000
DependOnGroup = REG_MULTI_SZ "SCSI miniport"
Um novo grupo pode ser adicionado para ServiceGroupOrder denominado "O-me primeiro" e SAMPLDRV podem ter o respectivo grupo definida para o me primeiro. Segue-se ServiceGroupOrder modificado: Miniport SCSI Seguem-se entradas do registo do SAMPLDRV: porta Disco principal Carregar-me primeiro Classe de SCSI Unidade de CD-ROM SCSI classe filtro sistema de ficheiros de arranque . . .
\registry\machine\system\currentcontrolset\services\sampldrv
Type = REG_DWORD 0x00000001
Start = REG_DWORD 0x00000000
Group = Load Me First
ErrorControl = REG_DWORD 0x00000000
DependOnGroup = REG_MULTI_SZ "SCSI miniport"
Com esta configuração, SAMPLDRV carrega antes SCSIDISK. Método n.º 2: GroupOrderList e valores de códigoUma chave opcional denominada controlo pode ser incluída no registo de um controlador de dispositivo. O valor de etiqueta ajuda a determinar a ordem de carregamento de controladores de dispositivos num grupo. A ordem de carregamento não é necessariamente por ordem numérica; em vez disso, é pela ordem definida pelo GroupOrderList. A primeira entrada por grupo de GroupOrderList é o número de valores de controlo. Este é seguido de sequência numérica na qual os valores de controlo devem ser carregado. Controladores de dispositivos num grupo primeiro são carregados acordo com para o respectivo valor de código conforme definido pelo GroupOrderList. Se o controlador de dispositivo não tiver um valor de controlo ou se o valor de código não estiver no GroupOrderList, estes controladores de dispositivo carregado depois dos controladores de dispositivo com valores de código válidos são carregados. Estes controladores de dispositivo, a ordem de carregamento não está assegurada, diferente do que todos os controladores de dispositivo num grupo são carregados antes de carrega o grupo seguinte.Segue-se uma saída parcial do GroupOrderList:
\registry\machine\system\currentcontrolset\control\grouporderlist
Base = REG_BINARY 0d 00 00 00 01 00...
Extended base = REG_BINARY 04 00 00 00 01 00...
Filter = REG_BINARY 05 00 00 00 01 00...
Keyboard Class = REG_BINARY 01 00 00 00 01 00...
Keyboard Port = REG_BINARY 01 00 00 00 01 00...
Ndis = REG_BINARY 09 00 00 00 01 00...
Pointer Class = REG_BINARY 01 00 00 00 01 00...
Pointer Port = REG_BINARY 03 00 00 00 01 00...
.
.
.
NOTA: Não existe nenhum valor para a classe SCSI. Nem todos os grupo é representado no GroupOrderList. Quando um grupo não está a GroupOrderList, a ordem devido ao qual controladores de dispositivo carregado dentro do grupo não pode ser garantida. Tal como com ServiceGroupOrder, o GroupOrderList pode ser modificado. Utilizando o mesmo exemplo acima indicado, as entradas de controlo para classe de SCSI podem ser adicionadas:
\registry\machine\system\currentcontrolset\control\grouporderlist
SCSI class = REG_BINARY 02 00 00 00 02 00 00 00 01 00 00 00
Base = REG_BINARY 0d 00 00 00 01 00...
Extended base = REG_BINARY 04 00 00 00 01 00...
.
.
.
Neste exemplo, a classe de SCSI de grupo reconhece dois valores de controlo, 00000001 e 00000002. A ordem em que a carga de valores do controlo é 00000002 em primeiro lugar, seguido de 00000001. Se SAMPLDRV estiver num grupo de classe de SCSI, que é o mesmo SCSIDISK, o valor de código garante que SAMPLDRV carrega antes SCSIDISK porque SCSIDISK não tem nenhum valor de código e não marcados controladores são carregados pela última vez num grupo. Se por algum motivo SCSIDISK é atribuído um valor de código de 0 x 00000001, SAMPLDRV carrega antes SCSIDISK quando SAMPLDRV é atribuído um valor de código de 00000002:
\registry\machine\system\currentcontrolset\services\sampldrv
Type = REG_DWORD 0x00000001
Start = REG_DWORD 0x00000000
Group = SCSI class
ErrorControl = REG_DWORD 0x00000000
DependOnGroup = REG_MULTI_SZ "SCSI miniport"
Tag = REG_DWORD 0x00000002
A informação contida neste artigo aplica-se a:
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 115486
(http://support.microsoft.com/kb/115486/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesTraduções de Artigos
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Voltar ao topo