Regras de Configuração (Config_Rules) Classe de Objeto
Descrição
A classe de objetos Regras de Configuração (Config_Rules) contém as regras de configuração utilizadas pelo Gerente de Configuração. O Gerenciador de Configuração é executado em duas fases durante a inicialização do sistema. A primeira fase é responsável pela configuração dos dispositivos de base para que o dispositivo root real possa ser configurado e feito pronto para operação. A segunda fase configura o restante dos dispositivos no sistema depois que o sistema de arquivos raiz está em funcionamento. O Gerenciador de Configuração também pode ser invocado no tempo de execução. A rotina do Gerenciador de Configuração é conduzida pelas regras na classe de objetos Config_Rules.
A classe de objetos Config_Rules é pré-carregada com regras de configuração predefinidas quando o sistema é entregue. Existem três tipos de regras: fase 1, fase 2 e serviço de fase 2. É possível usar os comandos do ODM para incluir, remover, alterar e mostrar regras de configuração novas ou existentes nessa classe de objeto para customizar o comportamento do Gerenciador de Configuração No entanto, qualquer alteração em uma regra de fase 1 deve ser escrita para que o sistema de arquivos de inicialização seja efetivo. Isso é feito com o comando bosta .
Todos os dispositivos lógicos e físicos do sistema são organizados em clusters de estruturas de árvores chamadas nós. Para obter informações sobre nós ou estruturas de árvore, consulte o "Overview Gerenciador de Configuração de Dispositivo" em Kernel Extensões e Conceitos de Programação de Suporte de Dispositivo. As regras na classe de objetos Config_Rules especificam nomes de programas que o Gerente de Configuração executa. Usualmente, esses programas são os programas de configuração para a parte superior dos nós. Quando esses programas são chamados, os nomes dos próximos dispositivos de nível inferior que precisam ser configurados são retornados na saída padrão.
O Gerenciador de Configuração configura os próximos dispositivos de menor nível, invocando o Método de configurar para esses dispositivos. Por sua vez, esses dispositivos retornam uma lista de nomes de dispositivos a serem configurados. Esse processo é repetido até que não sejam retornados mais nomes de dispositivos. Todos os dispositivos em um mesmo nó são configurados em uma ordem transversal.
A segunda fase da inicialização do sistema requer dois conjuntos de regras: fase 2 e serviço. A posição da chave no painel frontal determina qual conjunto de regras é utilizado. As regras de serviço são usadas quando a chave está na posição de serviço. Se a chave estiver em qualquer outra posição, são utilizadas as regras de fase 2. Diferentes tipos de regras são indicadas no descritor Phase do Gerenciador de Configuração desta classe de objetos.
Cada regra de configuração tem uma máscara de inicialização associada. Se esta máscara tiver um valor não zero, ele representa o tipo de inicialização a que a regra se aplica. Por exemplo, se a máscara tiver um valor DISK_BOOT , a regra se aplica às botas do sistema em que os discos são dispositivos de base. O tipo de máscaras de inicialização são definidas no arquivo /usr/include/sys/cfgdb.h .
Descritores
A classe de objeto Config_Rules contém os seguintes descritores:
| ODM Tipo | Nome do descritor | Descrição | Status do descritor |
|---|---|---|---|
| ODM_SHORT | phase | Fase Do Gerenciador De Configuração | Obrigatório |
| ODM_SHORT | SEQ | Valor da sequência | Obrigatório |
| ODM_LONG | máscara_de_inicialização | Tipo de inicialização | Obrigatório |
| ODM_VCHAR | rule_value [RULESIZE] | Valor da Regra | Obrigatório |
Estes descritores são descritos da seguinte forma:
| Descritor | Descrição |
|---|---|
| Fase Do Gerenciador De Configuração | Este descritor indica qual fase uma regra deve ser executada nos termos da fase 1, fase 2 ou serviço de fase 2.
|
| Valor da sequência | Em relação às demais regras desta fase, oseqnúmero indica a ordem na qual executar este programa. Em geral, o inferior oseqnúmero, quanto maior a prioridade. Por exemplo, uma regra com umseqnúmero de 2 é executado antes de uma regra com umseqnúmero de 5. Há uma exceção para isso: um valor de 0 indica uma condição de DONT_CARE, e qualquer regra com umseqnúmero de 0 é executado por último. |
| Tipo de inicialização | Caso o comandoboot_maskcampo tem um valor não zero, ele representa o tipo de inicialização a que a regra se aplica. Se o sinalizador -m for usado ao invocar o comando cfgmgr , o comando cfgmgr aplica a máscara especificada a este campo para determinar se será executado a regra. Por padrão, o comando cfgmgr sempre executa uma regra para a qual oboot_maskcampo tem um valor de 0. |
| Valor da Regra | Este é o nome do caminho completo do programa a ser invocado. O descritor de valor de regra também pode conter quaisquer opções que devem ser passadas para esse programa. No entanto, as opções devem seguir o nome do programa, uma vez que toda a cadeia será executada como se ela tivesse sido digitada na linha de comando. Nota: Existe uma regra para cada programa executar. Se vários programas são necessários, então várias regras devem ser adicionadas.
|