estrutura CLFS_MGMT_POLICY (wdm.h)
A estrutura CLFS_MGMT_POLICY contém uma descrição de uma política para gerenciar um log CLFS.
Sintaxe
typedef struct _CLFS_MGMT_POLICY {
ULONG Version;
ULONG LengthInBytes;
ULONG PolicyFlags;
CLFS_MGMT_POLICY_TYPE PolicyType;
union {
struct {
ULONG Containers;
} MaximumSize;
struct {
ULONG Containers;
} MinimumSize;
struct {
ULONG SizeInBytes;
} NewContainerSize;
struct {
ULONG AbsoluteGrowthInContainers;
ULONG RelativeGrowthPercentage;
} GrowthRate;
struct {
ULONG MinimumAvailablePercentage;
ULONG MinimumAvailableContainers;
} LogTail;
struct {
ULONG Percentage;
} AutoShrink;
struct {
ULONG Enabled;
} AutoGrow;
struct {
USHORT PrefixLengthInBytes;
WCHAR PrefixString[1];
} NewContainerPrefix;
struct {
ULONGLONG NextContainerSuffix;
} NewContainerSuffix;
struct {
USHORT ExtensionLengthInBytes;
WCHAR ExtensionString[1];
} NewContainerExtension;
} PolicyParameters;
} CLFS_MGMT_POLICY, *PCLFS_MGMT_POLICY;
Membros
Version
A versão da estrutura CLFS_MGMT_POLICY . Defina isso como CLFS_MGMT_POLICY_VERSION.
LengthInBytes
O comprimento da estrutura CLFS_MGMT_POLICY .
PolicyFlags
Os sinalizadores que se aplicam a essa instância da estrutura CLFS_MGMT_POLICY . O único sinalizador que foi implementado para esta versão é LOG_POLICY_OVERWRITE, que indica que, quando a política estiver instalada, ela substituirá a política do mesmo tipo, se essa política já existir.
PolicyType
Um valor da enumeração CLFS_MGMT_POLICY_TYPE que fornece o tipo dessa instância da estrutura CLFS_MGMT_POLICY .
PolicyParameters
A união que fornece as informações detalhadas sobre essa instância da estrutura CLFS_MGMT_POLICY .
PolicyParameters.MaximumSize
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyMaximumSize.
PolicyParameters.MaximumSize.Containers
O número máximo de contêineres que o log usará.
PolicyParameters.MinimumSize
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyMinimumSize.
PolicyParameters.MinimumSize.Containers
O número mínimo de contêineres que o log usará.
PolicyParameters.NewContainerSize
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyNewContainerSize.
PolicyParameters.NewContainerSize.SizeInBytes
O tamanho de cada um dos contêineres do log.
PolicyParameters.GrowthRate
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyGrowthRate.
PolicyParameters.GrowthRate.AbsoluteGrowthInContainers
O número de contêineres que devem ser adicionados quando o tamanho do log é aumentado. Se o membro RelativeGrowthPercentage for diferente de zero, AbsoluteGrowthInContainers deverá ser zero.
PolicyParameters.GrowthRate.RelativeGrowthPercentage
O percentual pelo qual o tamanho do log deve aumentar quando o log cresce, expresso como um número entre zero e 100. Por exemplo, se o log consistisse em 32 contêineres e RelativeGrowthPercentage fosse dez, então, quando o log precisasse crescer, ele cresceria três contêineres (32 * 10%, arredondados para baixo até o inteiro mais próximo). Se o membro AbsoluteGrowthInContainers for diferente de zero, RelativeGrowthPercentage deverá ser zero.
PolicyParameters.LogTail
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyLogTail.
PolicyParameters.LogTail.MinimumAvailablePercentage
Quando o gerenciamento CLFS notificar o cliente para mover sua parte final do log, ele especificará que a parte final seja movida para um LSN que deixa pelo menos o percentual MinimumAvailablePercentage do log livre. Se o membro MinimumAvailableContainers for diferente de zero, MinimumAvailablePercentage deverá ser zero.
PolicyParameters.LogTail.MinimumAvailableContainers
Quando o gerenciamento CLFS notificar o cliente para mover sua parte final do log, ele especificará que a parte final seja movida para um LSN que deixa pelo menos contêineres MinimumAvailableContainers gratuitos. Se o membro MinimumAvailablePercentage for diferente de zero, MinimumAvailableContainers deverá ser zero.
PolicyParameters.AutoShrink
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyAutoShrink.
PolicyParameters.AutoShrink.Percentage
Quando o percentual de espaço livre no log atingir Porcentagem, o log será reduzido. A porcentagem é expressa como um número entre 0 e 100, portanto, um valor de 25 significaria 25%.
PolicyParameters.AutoGrow
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyAutoGrow.
PolicyParameters.AutoGrow.Enabled
Um valor numérico que determina se o crescimento automático de log está habilitado. Qualquer valor diferente de zero permite o crescimento automático.
PolicyParameters.NewContainerPrefix
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyNewContainerPrefix.
PolicyParameters.NewContainerPrefix.PrefixLengthInBytes
O comprimento, em bytes, do membro PrefixString .
PolicyParameters.NewContainerPrefix.PrefixString[1]
Uma cadeia de caracteres largos que contém o caminho completo para o diretório onde residem os contêineres do log, bem como um prefixo que será usado como parte do nome do arquivo para cada contêiner no log.
PolicyParameters.NewContainerSuffix
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyNewContainerSuffix.
PolicyParameters.NewContainerSuffix.NextContainerSuffix
O número a ser usado como o sufixo do nome do arquivo para o próximo contêiner no log. Para formar o nome do arquivo, o número é convertido em uma cadeia de caracteres de dígitos decimais e acrescentado à cadeia de caracteres de prefixo. O número é incrementado para o nome do arquivo de cada contêiner subsequente.
PolicyParameters.NewContainerExtension
A estrutura que fornece as informações detalhadas sobre uma política cujo PolicyType é ClfsMgmtPolicyNewContainerExtension.
PolicyParameters.NewContainerExtension.ExtensionLengthInBytes
O comprimento, em bytes, do membro ExtensionString .
PolicyParameters.NewContainerExtension.ExtensionString[1]
Uma cadeia de caracteres largos que contém a extensão para o nome do arquivo para cada contêiner no log. Os nomes de arquivo de contêiner são criados usando o formato [prefixo][sufixo][.extension]. Uma extensão é opcional. A extensão padrão é a cadeia de caracteres vazia.
Comentários
A maneira como uma estrutura de CLFS_MGMT_POLICY é interpretada depende do tipo de política que a estrutura contém.
Você pode fornecer políticas que especificam como o log será gerenciado. Cada política é uma instância da estrutura CLFS_MGMT_POLICY , mas a estrutura é interpretada de forma diferente dependendo do tipo de política. O CLFS usa as informações fornecidas nas políticas para adaptar como ele gerencia o log.
Ao criar uma estrutura CLFS_MGMT_POLICY cujo PolicyType é ClfsMgmtPolicyNewContainerPrefix, aloque espaço suficiente para manter a cadeia de caracteres PolicyParameters.NewContainerPrefix.PrefixString .
Você só pode instalar uma política cujo tipo de política especificado no valor PolicyType é ClfsMgmtPolicyNewContainerSize antes que haja contêineres no log. Você pode alterar outras políticas depois que o log existir.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |