Microsoft detalha melhorias para drivers de próxima geração do Windows 11

Microsoft detalha melhorias para drivers de próxima geração do Windows 11

Integração do Rust pela Microsoft no desenvolvimento de drivers do Windows

Desde meados de 2023, a Microsoft tem se concentrado na incorporação do Rust ao sistema operacional Windows. Essa iniciativa começou com a integração bem-sucedida do Rust ao kernel do Windows e agora evoluiu para incentivar os desenvolvedores de drivers a adotar essa linguagem de programação inovadora.

Lançamento do windows-drivers-rsProjeto Open-Source

Em julho, a Microsoft lançou o projeto de código aberto windows-drivers-rs, um esforço da equipe do Surface com o objetivo de simplificar o desenvolvimento de drivers para Windows usando Rust. Esta estrutura foi projetada para aumentar a eficiência do desenvolvimento de drivers em Rust, oferecendo uma alternativa mais moderna a linguagens convencionais como C.

Introdução da cargo-wdkCaixa

Mais recentemente, a Microsoft anunciou melhorias nessa iniciativa, principalmente com o lançamento do cargo-wdkCrate. Esta nova extensão do Cargo simplifica o processo de criação de drivers, gerando projetos de drivers vazios que vêm com etapas de compilação, dependências e vinculação pré-configuradas. Ela também pode utilizar ferramentas do Windows Driver Kit (WDK), como o InfVerif, espelhando a experiência de compilação de drivers em C no Visual Studio.

Vantagens de usar Rust

Rust se destaca de linguagens de programação tradicionais, como C, por oferecer recursos superiores de segurança de memória. Esse atributo reduz significativamente o risco de vulnerabilidades de segurança relacionadas à memória. Além disso, Rust apresenta compatibilidade excepcional com código de driver C e C++, facilitando a transição para desenvolvedores.

Metas e desenvolvimentos futuros

A visão de longo prazo da Microsoft é equipar os desenvolvedores Rust no ecossistema Cargo com ferramentas de compilação e opções de configuração que correspondam às disponíveis no Visual Studio. A médio prazo, a empresa pretende implementar a instalação automática do Windows Driver Kit, suporte para NT_TARGET_VERSION e compatibilidade total com ARM64, entre outras melhorias.

Status atual do Rust no desenvolvimento de drivers

Atualmente, o windows-drivers-rsframework facilita tipos específicos de drivers em Rust; no entanto, ainda requer uma quantidade considerável de código inseguro. A Microsoft está colaborando ativamente com especialistas em Rust para criar abstrações mais seguras para Drivers de Modo Kernel (KMD) e Drivers de Modo Usuário (UMD).Várias equipes também estão trabalhando no desenvolvimento de estruturas e APIs seguras, adaptadas tanto para as funcionalidades principais do kernel quanto para o desenvolvimento de drivers de terceiros, com algumas dessas inovações já integradas ao kernel do Windows.

Compreendendo a abstração no desenvolvimento de drivers

Para quem não conhece o termo, abstração, neste contexto, refere-se ao processo de transição segura entre o modo usuário e o modo kernel. O modo kernel opera no nível de privilégio mais alto, enquanto o modo usuário opera em um nível de privilégio mais baixo, destacando a importância de transições seguras e eficientes.

Próximos passos e melhores práticas

Olhando para o futuro, a Microsoft planeja fornecer mais insights e práticas recomendadas sobre o desenvolvimento de drivers, incluindo o uso de CodeQL para análise estática. Notavelmente, a empresa atualizou suas diretrizes para análise estática de drivers de terceiros em julho, em alinhamento com o lançamento do Windows 11 versão 25H2.

Para explorar mais sobre esses desenvolvimentos, você pode acessar a postagem completa do blog aqui no site oficial da Comunidade de Tecnologia da Microsoft.

Fonte e Imagens

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *