Gerenciando objetos Kernel
O Gerenciador de Objetos do Windows controla objetos que fazem parte do sistema operacional do modo kernel. Um objeto é uma coleção de dados que o sistema operacional gerencia.
Objetos típicos do modo kernel incluem os seguintes objetos:
Objetos de dispositivo (consulte Device Objects and Device Stacks.)
Objetos de arquivo.
Links simbólicos.
Chaves do Registro.
Threads e processos.
Objetos dispatcher de kernel, como objetos de evento e objetos mutex. (Consulte Objetos do Dispatcher do Kernel.)
Objetos de retorno de chamada. (Consulte Objetos de retorno de chamada.)
Objetos section. (Consulte Objetos e exibições de seção.)
Os objetos do modo kernel permitem manipular objetos em parceria com o gerenciador de objetos sem danificar as partes dos objetos de que o sistema operacional precisa. Esse princípio é chamado de encapsulamento e é um dos principais conceitos da programação orientada a objetos. (Como os objetos do modo kernel não fornecem outros aspectos da orientação do objeto, a programação no modo kernel normalmente é conhecida como baseada em objeto.) Os objetos do modo kernel não seguem as mesmas regras que objetos em C++ ou Microsoft COM.
Objetos no modo kernel podem ser referenciados por ponteiros. Um objeto pode ter um nome de objeto. Para obter mais informações sobre nomes de objeto, consulte Nomes de objeto.
Os programadores de modo de usuário podem referenciar objetos somente por meio de indireção, usando um identificador. Se um objeto tiver um nome, você poderá usá-lo para obter o identificador no modo de usuário. Para obter mais informações sobre identificadores, consulte Identificadores de objeto.
Os objetos do modo kernel têm um ciclo de vida muito específico. Para obter mais informações sobre ciclos de vida do objeto, consulte Ciclo de vida de um objeto.
A segurança do objeto é uma preocupação importante para a programação no modo kernel. Para obter mais informações sobre a segurança do objeto, consulte Segurança do objeto.
O ambiente do modo kernel armazena objetos em um sistema de diretório virtual, também conhecido como namespace do objeto. Isso permite que objetos sejam acessados de maneira hierárquica com objetos pai e filho. Esse namespace é semelhante a um conjunto de diretórios do sistema de arquivos, mas não corresponde exatamente a um sistema de arquivos específico em seu computador. Para obter mais informações sobre diretórios de objeto, consulte Diretórios de Objetos.