A novela sobre a presença da linguagem Rust in Linux acabou depois de muitos capítulos. A implementação começou. Em uma conversa por e-mail, o criador do Linux, Linus Torvalds, disse: “A menos que algo estranho aconteça, ele [Rust] chegará ao 6.1.” Portanto, Linus Torvalds garante que a linguagem Rust entrará no Linux 6.1.
A linguagem de programação Rust que entra no kernel do Linux vem chegando há algum tempo. Na Linux Plumbers Conference 2020 , os desenvolvedores começaram a considerar o uso da linguagem Rust para o novo código inline do Linux. O Google, que suporta Rust para o desenvolvimento do Android – em si uma distribuição Linux – começou a pressionar o Rust no kernel Linux em abril de 2021.
Como Wedson Almeida Filho da equipe Android do Google disse na época, “Nós sentimos que o Rust está pronto para se juntar ao C como uma linguagem prática para implementar o kernel. Ele pode nos ajudar a reduzir o número de possíveis bugs e vulnerabilidades de segurança em código privilegiado enquanto jogando bem com o núcleo do kernel e preservando suas características de desempenho.”
Linus Torvalds garante que a linguagem Rust entrará no Linux 6.1
Demorou um pouco para convencer os principais desenvolvedores do kernel Linux disso. Havia preocupações sobre a necessidade de extensões Rust não padrão para fazê-lo funcionar no Linux. Por exemplo, com o novo driver Rust Linux NVMe, mais de 70 extensões precisavam ser feitas no Rust para que ele funcionasse. Mas, Torvalds me disse em uma entrevista anterior, “Nós temos usado exceções ao padrão C por décadas.”
Isso ainda era um problema no Linux Kernel Keepers Summit, apenas para convidados . Mas, no final, foi decidido que Rust é bem suportado no Clang – o front-end do compilador da família de linguagem C – para seguir em frente. Além disso, como Torvalds havia dito anteriormente, “Clang funciona, então mesclar Rust provavelmente ajudaria e não prejudicaria o kernel”.
Na reunião, Torvalds disse: “Houve um debate na Cúpula dos Mantenedores, mas na verdade foi principalmente sobre a questão das versões do compilador. gcc vs clang).
Mais detalhes sobre a chegada do Rust
Também ajudou no caso de Rust que – graças ao trabalho inovador do kernel do Linux e do desenvolvedor de Rust Miguel Ojeda – o Rust no Linux ficou muito mais maduro. Além disso, Andreas Hindborg, engenheiro principal da Western Digital, no Linux Plumbers Summit 2022, mostrou que você pode escrever um driver de primeira linha, um driver SSD NVM-Express (NVMe) para Linux em Rust. Os mantenedores estavam convencidos de que era hora de avançar com Rust no Linux. Em suma, eles concordaram que o Rust no Linux estava pronto para o trabalho.
Agora, Torvalds adverte nesta primeira versão, Rust terá “apenas a infraestrutura central (ou seja, nenhum caso de uso sério ainda)”. Mas, ainda assim, este é um primeiro passo importante para Rust e Linux.