com a próxima versão do kernel Linux 6.1, há a infraestrutura inicial do Rust mesclada para permitir o uso da linguagem de programação Rust para futuros drivers do kernel e outros códigos do kernel. Mas esse estado no Linux 6.1 é o básico e ainda não é prático, enquanto agora um envio secundário de patches”Rust for Linux”foi enviado para permitir que mais desenvolvimento do kernel aconteça com o Rust.

Miguel Ojeda, que lidera o esforço Rust for Linux, enviou um conjunto de 28 patches na quinta-feira que fornecem mais adições ao núcleo Rust ao kernel. Ojeda explicou na série de patches esta última grande série de patches:

Esta série de patches é o primeiro lote de alterações para upstream do resto do suporte Rust.

Neste caso, todas as facilidades introduzidas fazem parte do”núcleo Rust”. Eles não interagem com o lado C de novas maneiras principais (sem novos tipos C usados; apenas `strlen`, `memchr`, códigos de erro adicionais e mais algumas strings de formato `printk`).

Após esta série, `str.rs` e `print.rs` estão em sincronia com o downstream e todas as macros proc restantes foram adicionadas. `error.rs` também é bastante completo, embora mais alguns recursos `pub(crate)` venham mais tarde (para evitar deixar código morto entre as séries).

Observe que alguns atributos temporários `#[allow(dead_code)]` são usados ​​para ter um pouco mais de liberdade na organização dos patches, mantendo todos eles edificáveis ​​sem avisos/erros, mas no final da série não resta nenhum (dos temporários).

Praticamente todo o código está no linux-next há meses e fazia parte da série de patches Rust antes do corte (ou seja, até a v8).

Cada patch foi testado em um `defconfig` habilitado para Rust com `CLIPPY=1` nos destinos `all`, `rustfmtcheck`, `rustdoc` e `rusttest`.

Dado que este código está no linux-next há algum tempo e já foi revisado como parte da série de patches Rust for Linux original, é bem possível que possamos ver este trabalho pronto a tempo para o Janela de mesclagem do Linux 6.2 no próximo mês. Veremos. De qualquer forma, o trem Rust for Linux continua rolando.
Quando toda essa infraestrutura Rust estiver instalada, veremos quanto tempo leva até que drivers mais proeminentes do mundo real comecem a fazer a transição para o código Rust para suporte a novo hardware ou reescrever o código de driver C existente no Rust. Espera-se que um dos primeiros grandes usuários do Rust no kernel Linux seja o driver DRM para os gráficos Apple M1/M2.

Separadamente, ontem, a Agência de Segurança Nacional dos EUA publicou orientações sobre proteção contra problemas de segurança de memória. O relatório da NSA sugere o uso da linguagem de programação Rust ou outras linguagens de memória segura, como Swift, Java, Go, Ruby e C#.

Categories: IT Info