Uma nova discussão na Linux Kernel Mailing List (LKML) reacendeu um tema que costuma gerar reações fortes na comunidade: o uso de aprendizado de máquina no kernel Linux. A proposta foi apresentada por Viacheslav Dubeyko, engenheiro da IBM, e explora uma abordagem cautelosa para permitir que subsistemas do kernel recebam assistência de modelos de machine learning rodando inteiramente no espaço do usuário.
Desde o início, o autor deixa claro que não se trata de colocar código de IA ou ML dentro do kernel. A ideia é manter o kernel determinístico, previsível e sob total controle humano, usando modelos de ML apenas como uma camada consultiva, nunca decisória.
O coração da proposta é a criação de um “ML proxy”, um componente leve dentro do kernel que serviria como ponte entre subsistemas internos e modelos de ML executados em user space. Esse proxy teria a função de expor dados estruturados, como estado interno, métricas de desempenho ou padrões de uso e receber recomendações externas, que poderiam ou não ser aplicadas pelo kernel.
Toda a parte pesada ficaria fora do kernel: treinamento, inferência, experimentação e ajustes dos modelos. Isso resolveria alguns dos principais obstáculos técnicos, como o uso de ponto flutuante (FPU), que não é permitido diretamente no kernel, além de evitar impactos imprevisíveis de desempenho. A comunicação poderia usar mecanismos já existentes, como sysfs, dispositivos de caractere, FUSE ou até eBPF, reduzindo a necessidade de novas infraestruturas complexas.
Outro ponto interessante é a proposta de um loop de feedback. Caso o kernel decida aplicar uma recomendação, ele poderia medir sua eficiência e devolver esses dados ao espaço do usuário. Assim, o modelo poderia ser refinado ou re-treinado com base em resultados reais, sem comprometer a estabilidade do sistema. O texto reforça que a lógica tradicional, escrita por desenvolvedores humanos, continuaria sendo a base, o ML apenas sugeriria caminhos alternativos.
Dubeyko descreve ainda diferentes modos de operação, como um modo de emergência (em que o ML é ignorado), um modo de aprendizado, um modo colaborativo e, em cenários muito específicos, um modo de recomendação mais ativa. Mesmo nesse último caso, a decisão final sempre permaneceria com o kernel.
Um protótipo inicial dessa biblioteca de ML já foi publicado, junto com uma série de patches RFC (Request for Comments). Eles são explicitamente experimentais e não têm qualquer pretensão imediata de serem integrados ao kernel principal. O objetivo, por enquanto, é provocar debate e coletar feedback da comunidade.
Como era de se esperar, a proposta ainda levanta muitas perguntas: quais subsistemas realmente se beneficiariam disso? O ganho justifica a complexidade adicional? E como evitar que esse tipo de abordagem abra precedentes perigosos no futuro?Participe de uma das comunidades mais vibrantes sobre tecnologia e Linux no Brasil e ainda tenha acesso à vídeos, cursos e mais benefícios exclusivos: seja membro Diolinux Play!