Por Tiago Hillebrandt
Visando esclarecer a polêmica que veio a tona nos últimos dias, entrei em contato com o Time doKernel Ubuntu para determinar a real diferença entre o kernel Ubuntu e o seu pai, o kernel Linux.
Depois do contato, Leann Ogasawara – engenheira do Time do Kernel Ubuntu – criou um wikiesclarecendo algumas das principais adições e/ou modificações da empresa ao kernel Linuxvindouro do upstream, sendo que elas dão origem ao tão polêmico kernel Ubuntu.
E com base no material disponível no wiki do time do kernel é que apresento essa argumentação, visando esclarecer de uma vez por todas essa questão.
ENTENDENDO A ESSÊNCIA DO KERNEL UBUNTU
As diferenças (adições e/ou modificações) a serem efetuadas ao kernel Linux são especificadas pelo Time do Kernel do Ubuntu a cada UDS, sendo elas conhecidas como deltas.
Ao contrário do que muitos pensam, e dizem, o kernel Ubuntu não é apenas uma compilação idêntica ao kernel Linux. Ele envolve todo um conjunto de necessidades da distribuição – deltas – que não teriam um real motivo para serem incluídas ao upstream do Linux.
A seguir você encontra alguns dos principais deltas do kernel Ubuntu e as respectivas justificativas para não incluí-los ao upstream do Linux.
PATCHES PARA EMPACOTAMENTO NO UBUNTU
Eles são os ingredientes necessários para construção de um pacote Debian. Esses patches não trazem nenhum benefício ao kernel Linux como um todo, portanto sempre serão um delta doUbuntu.
PATCHES DE CONFIGURAÇÃO DO UBUNTU
Esses patches envolvem algumas alterações no kernel do upstream para configuração do Ubuntu. Essas alterações podem habilitar ou desabilitar drivers e recursos, bem como modificar um driverpara construção de um novo módulo ou vice-versa. Não existe um motivo para enviá-los aoupstream. Maiores detalhes dos patches de configuração do Ubuntu podem ser encontrados na especificação Ubuntu Kernel Config Review, em https://wiki.ubuntu.com/KernelTeam/Specs.
PATCHES “ESCOLHIDOS A DEDO” DO UPSTREAM
Durante o UDS, o Time do Kernel do Ubuntu determina qual versão do kernel Linux virá no próximo lançamento. Por exemplo, para o Ubuntu 12.04 Precise Pangolin o kernel Linux 3.2 foi escolhido. O desenvolvimento do kernel Linux continua no upstream, enquanto o kernel Ubuntu permanece travado na versão definida no UDS. Com isso, muitas vezes algum patch é aplicado à versão noupstream depois que a versão para o kernel Ubuntu foi escolhida. Nesse cenário, o patch doupstream é escolhido a dedo (cherry-picked) para ser incluído no kernel Ubuntu. Mesmo ele fazendo parte do upstream, ele é considerado um delta, pois não é um patch incluso no lançamento do kernel Linux em que o Ubuntu foi baseado.
PATCHES PARA DRIVERS DO UBUNTU
Já esses patches se referem a mudanças contrárias as da árvore de drivers do kernel Linux, onde por um motivo ou outro foram escolhidas para serem levadas a árvore do kernel Ubuntu. O time dokernel tem concentrado um esforço muito grande para trazer elas para fora da árvore de drivers, movendo-as para um pacote DKMS independente.
PATCHES SAUCE DO UBUNTU
Esses patches geralmente estão tomando seu caminho no upstream, mas ainda não foram lançados no kernel Linux. Esses patches são considerados valiosos o suficiente para serem carregados nokernel Ubuntu, independente da aprovação deles no upstream. Muitos desses patches são oriundos das árvores dos desenvolvedores e das listas de e-mail do upstream.
PATCHES NO-UP DO UBUNTU
Geralmente são os patches sauce que foram reprovados no upstream. Eles são considerados valiosos o suficiente para continuar no kernel Ubuntu, mesmo tendo sido rejeitados no kernel Linux.
VER PARA CRER
Em outro e-mail, Tim Gardner, líder técnico do Time do Kernel Ubuntu, encaminhou os comandos para os interessados em visualizar os commits do 12.04 que não estão na árvore principal de desenvolvimento do kernel Linux, ou seja, os deltas.
SHUTTLEWORTH REBATE AS CRÍTICAS
Ainda ontem, Mark Shuttleworth, fundador do Ubuntu, rebateu as acusações de que a empresa não contribui para o kernel Linux. Mark ressaltou que a Canonical mantém um time com 25 engenheiros de kernel, ou mais, focados na capacitação de dispositivos ARM até Xeon, bem como garantia de qualidade. Além disso, segundo Shuttleworth, a Canonical mantém o AppArmor, umframework de segurança que leva o rigor do SELinux e o torna fácil de usar.
De acordo com o fundador do Ubuntu, o objetivo não é liderar o desenvolvimento do kernel, mas sim do Unity, do Metal as a Service, do Juju e de outras ferramentas que fazem do Linux um ambiente fantástico tanto para usuários finais quanto para desenvolvedores e administradores de sistemas.
CONCLUSÃO
Com base no que foi apresentado, creio que podemos afirmar tranquilamente que a Canonical não está planejando abrir mão do Linux, como li em boatos levantados recentemente, bem como que a empresa não irá dar início a um fork do kernel.
A Canonical apenas está aperfeiçoando o kernel Linux para sua plataforma, e resolveu chamar essa melhoria destinada ao Ubuntu de kernel Ubuntu.
fonte: Ubuntu-BR-SC