Em 25 de agosto de 1991, após cinco meses de desenvolvimento, o estudante de 21 anos Linus Torvalds anunciou em um grupo de discussão do comp.os.minix a criação do protótipo funcional de um novo sistema operacional, o Linux, para o qual foi destacado o término da portabilidade do bash 1.08 e do gcc 1.40. O primeiro lançamento público do núcleo Linux foi apresentado em 17 de setembro. O núcleo 0.0.1 tinha um tamanho de 62 KB compactado e continha aproximadamente 10 mil linhas de código-fonte. O núcleo Linux moderno conta com cerca de 44 milhões de linhas de código.
O núcleo Linux foi criado sob a influência do sistema operacional MINIX, que não agradava Linus por conta de sua licença restritiva. Posteriormente, quando o Linux se tornou um projeto conhecido, detratores tentaram acusar Linus de copiar diretamente o código de algumas subsistemas do MINIX. A resposta foi dada por Andrew Tanenbaum, autor do MINIX, que encarregou um de seus alunos de realizar uma comparação detalhada entre o código do MINIX e as primeiras versões públicas do Linux. Os resultados mostraram apenas quatro coincidências não significativas em blocos de código, devido às exigências do POSIX e do ANSI C.
Inicialmente, Linus pensou em nomear o núcleo de Freax, a partir das palavras "free", "freak" e X (Unix). Mas o nome "Linux" foi dado a ele pela mão amigável de Ari Lemmke, que a pedido de Linus hospedou o núcleo em um servidor FTP da universidade, nomeando o diretório do arquivo não como "freax", como pedido por Torvalds, mas sim como "linux". Curiosamente, o empresário William Della Croce conseguiu registrar a marca Linux e pretendia coletar royalties no futuro, mas posteriormente mudou de ideia e transferiu todos os direitos da marca a Linus. O mascote oficial do núcleo Linux, o pingüim Tux, foi escolhido como resultado de um concurso realizado em 1996. O nome Tux é uma abreviação para Torvalds UniX.
Dinâmica de crescimento da base de código (número de linhas de código-fonte) do núcleo:
- 0.0.1 — setembro de 1991, 10 mil linhas de código;
- 1.0.0 — março de 1994, 176 mil linhas de código;
- 1.2.0 — março de 1995, 311 mil linhas de código;
- 2.0.0 — junho de 1996, 778 mil linhas de código;
- 2.2.0 — janeiro de 1999, 1,8 milhões de linhas de código;
- 2.4.0 — janeiro de 2001, 3,4 milhões de linhas de código;
- 2.6.0 — dezembro de 2003, 5,9 milhões de linhas de código;
- 2.6.28 — dezembro de 2008, 10,2 milhões de linhas de código;
- 2.6.35 — agosto de 2010, 13,4 milhões de linhas de código;
- 3.0 — agosto de 2011, 14,6 milhões de linhas de código;
- 3.5 — julho de 2012, 15,5 milhões de linhas de código;
- 3.10 — julho de 2013, 15,8 milhões de linhas de código;
- 3.16 — agosto de 2014, 17,5 milhões de linhas de código;
- 4.1 — junho de 2015, 19,5 milhões de linhas de código;
- 4.7 — julho de 2016, 21,7 milhões de linhas de código;
- 4.12 — julho de 2017, 24,1 milhões de linhas de código;
- 4.18 — agosto de 2018, 25,3 milhões de linhas de código;
- 5.2 — julho de 2019, 26,55 milhões de linhas de código;
- 5.8 — agosto de 2020, 28,4 milhões de linhas de código;
- 5.13 — junho de 2021, 29,2 milhões de linhas de código;
- 5.19 — agosto de 2022, 30,5 milhões de linhas de código;
- 6.4 — junho de 2023, 32,9 milhões de linhas de código.
- 6.10 — julho de 2024, 35,1 milhões de linhas de código.
- 6.16 - julho de 2025, 40,8 milhões de linhas de código.
- 7.2 - agosto de 2026, 43,9 milhões de linhas de código.
Progresso no desenvolvimento do núcleo:
- Linux 0.0.1 — setembro de 1991, primeiro lançamento público, suportando apenas CPU i386 e inicialização a partir de disquete;
- Linux 0.12 — janeiro de 1992, o código começou a ser distribuído sob a licença GPLv2;
- Linux 0.95 — março de 1992, permitido o funcionamento do X Window System, suporte à memória virtual e à partição de swap.
- Linux 0.96-0.99 — 1992-1993, início do trabalho na pilha de rede. Sistema de arquivos Ext2 introduzido, suporte para o formato de arquivos ELF adicionado, drivers para placas de som e controladores SCSI apresentados, carga de módulos do núcleo e sistema de arquivos /proc implementada.
- Em 1992, surgiram as primeiras distribuições SLS e Yggdrasil. No verão de 1993, os projetos Slackware e Debian foram fundados.
- Linux 1.0 — março de 1994, primeiro lançamento oficialmente estável;
- Linux 1.2 — março de 1995, aumento significativo no número de drivers, suporte para plataformas Alpha, MIPS e SPARC, expansão das capacidades da pilha de rede, introdução de filtragem de pacotes, suporte a NFS;
- Linux 2.0 — junho de 1996, suporte a sistemas multiprocessadores;
- Março de 1997: fundado o LKML, lista de discussão dos desenvolvedores do núcleo Linux;
- 1998: lançado o primeiro cluster baseado em Linux, listado no Top500, composto por 68 nós com CPU Alpha;
- Linux 2.2 - janeiro de 1999, eficiência do sistema de gerenciamento de memória aumentada, adicionada suporte a IPv6, firewall novo implementado, nova subsistema de som apresentado;
- Linux 2.4 — fevereiro de 2001, suporte a sistemas com 8 processadores e 64 GB de RAM, sistema de arquivos Ext3, suporte a USB, ACPI;
- Linux 2.6 — dezembro de 2003, suporte a SELinux, ferramentas de ajuste automático de parâmetros do núcleo, sysfs, sistema de gerenciamento de memória reestruturado.
- Em 2005, foi lançado o hipervisor Xen, que iniciou a era da virtualização;
- Em setembro de 2008, foi lançado o primeiro release da plataforma Android, baseada no núcleo Linux;
- Em julho de 2011, após 10 anos de desenvolvimento da série 2.6.x, houve a transição para a numeração 3.x. O número de objetos no repositório Git atingiu 2 milhões;
- Em 2015, foi lançado o núcleo Linux 4.0. O número de objetos git no repositório alcançou 4 milhões;
- Em abril de 2018, foi ultrapassada a marca de 6 milhões de objetos git no repositório do núcleo.
- Em janeiro de 2019, foi formado o ramo do núcleo Linux 5.0. O repositório atingiu 6,5 milhões de objetos git.
- Publicada em agosto de 2020, a versão 5.8 se tornou a maior em número de alterações em toda a história do projeto.
- No núcleo 5.13, foi estabelecido um recorde de 2150 desenvolvedores, cujas alterações foram incorporadas ao núcleo.
- Em agosto de 2022, foi formado o ramo do núcleo Linux 6.0, uma vez que havia uma quantidade suficiente de lançamentos na série 5.x para mudar o primeiro dígito da versão.
- No núcleo 6.1, lançado em dezembro de 2022, foi adicionada a possibilidade de usar a linguagem Rust como uma segunda linguagem para o desenvolvimento de drivers e módulos do núcleo.
- Em fevereiro de 2025, a marca de 40 milhões de linhas de código foi alcançada.
- O suporte ao Rust foi movido de experimental para as principais funcionalidades do núcleo Linux.
- Em 2026, houve um avanço no uso de ferramentas de IA para depuração, revisão de mudanças, identificação de erros e desenvolvimento de correções no núcleo. Entre outras coisas, Linus Torvalds começou a usar IA, por exemplo, recentemente para identificar as causas de problemas no driver Intel Xe.
Cerca de 65% de todas as mudanças no núcleo foram feitas por 20 empresas mais ativas. Por exemplo, ao desenvolver o núcleo 7.1, de todas as mudanças, 9,1% (um ano atrás no núcleo 6.16 eram 11,3%) foram preparadas pela Intel, 7,7% (6,3%) pela Google, 5,2% (5,4%) pela AMD, 5,0% (3,6%) pela Qualcomm, 4,7% (7,6%) pela Red Hat, 3,8% (2,4%) pela NVIDIA, 3,4% (2,9%) pela Meta, 2,9% (3,0%) pela SUSE, 2,5% (2,9%) pela Oracle, 2,1% (2,3%) pela ARM, 1,4% (1,4%) pela IBM, 1,3% (2,4%) pela Huawei. 18% (15,3%) das alterações foram preparadas por participantes independentes ou desenvolvedores que não declararam explicitamente seu trabalho para determinadas empresas. No número de linhas de código adicionadas ao núcleo 7.1, as empresas Meta, AMD e Qualcomm estão na liderança, com participações de 15,8%, 13,8% e 7,6% (no núcleo 6.16, a liderança foi da Intel, Red Hat e Google, com participações de 9,2%, 7,2% e 6,9%).
Fonte: opennet.ru
