A farsa "Linux é apenas o kernel"

The "Linux is just the kernel" fake. The truth they don't tell you

A farsa por trás do termo "Linux é somente o kernel": A verdade que não te contam sobre isso


 Por quase três décadas vem sendo propagado aos quatro cantos do mundo a vaga informação:

"O nome do sistema operacional não é Linux, Linux é somente o kernel do sistema operacional e somente com o kernel você não faz nada. As ferramentas do sistema operacional são do projeto GNU. Então, o nome correto é GNU/Linux."

 Ou postam em todos os lugares o estafante texto de autoria de Ricahrd Stallman:

"...Eu gostaria intervir por um momento. O que você está se referindo como Linux, é de fato, GNU/Linux, ou como eu recentemente passei a chamar, GNU mais Linux. Linux não é um sistema operacional em si..." ... "....Linux é o kernel: O programa no sistema que aloca recursos da máquina para outros programas que você executa. O kernel é uma parte essencial de um sistema operacional, mas inútil por si só..."

 Agora a moda da vez é dizer "GNU com ou sem Linux"... Patéticos... Estranho é que eu percebi que passaram a utilizar este argumento depois que mencionei no meu vídeo Linux ou GNU/Linux? Eis a questão que "no meu canal eu trato de Linux com ou sem GNU". Simplesmente pegaram a mesma frase inverteram, mas eu duvido que eles vivam sem Linux:


 Eu até poderia escrever pelo menos mais dois ou três artigos debatendo ponto por ponto desta frase, mas o meu foco aqui será unicamente no trecho "Linux é apenas o kernel". Então, bora!


Linux: mais do que o kernel do sistema operacional

 Linux surgiu como um pequeno e singelo kernel, com apenas um conjunto de drivers que Linus portou de seu emulador de terminal que havia desenvolvido como aprendizado, o suporte a hardware era limitado, travava quando atingia o limite máximo de memória e estes são apenas alguns dos problemas que Linux enfrentava. No final da descrição da licença do kernel 0.01 (que nesta ocasião ainda era regido sob a licença da convenção de Berna do século XIX) o próprio Linus Torvalds afirmou na época que:

 "Infelizmente, um kernel por si só não te leva a lugar algum. Para se ter um sistema funcional você precisa de um shell, compiladores, uma biblioteca e etc. Essas são partes separadas e muitas estão sob uma licença rigorosa (ou mesmo mais flexível). A maioria das ferramentas utilizadas com Linux são software do GNU e estão sob a GNU copyleft."

 Não somente em sua licença como também no arquivo README Linux—a free unix-386 kernel, especificamente em Coisas faltando/incompletas no Linux (Things missing/incomplete in Linux) é descrito que:

"Nenhum dos importantes comandos de administração do sistema ainda foram escritos para Linux. Estes incluem coisas como mkfs, format, fsck, mknod e etc. Alguns destes precisam de recursos do kernel ainda não implementados (format, mknod), alguns precisam apenas serem escritos. Assim como a biblioteca, eu aceitaria quaisquer arquivos distribuíveis livremente."

  Se o desenvolvimento do Linux tivesse parado por aqui, estaria correto afirmar que Linux era apenas um kernel, mas este argumento foi válido somente até a versão 0.10, pois a partir do kernel 0.11, lançado no dia 19 de Dezembro de 1991 (apenas quatro meses após seu nascimento), surgiram os primeiros comandos do Linux fidsk, mkfs e fsck desenvolvidos pelo próprio Linus Torvalds para tornar Linux self-hosting já que acidentalmente Linus havia discado a partição do Minix ao invés de seu modem destruindo completamente a partição do Minix:

LINUX's History
Linus relatando sobre a criação dos comandos mkfs/fsck/fdisk para o kernel 0.11


 Menos de um mês depois, foi lançado o kernel 0.12 com mais comandos como o mkswap, pois nesta versão originou-se o suporte a memória virtual no Linux, também chamado paginação de disco ou paginação de memória (Memory paging ou disc paging em inglês). A ideia surgiu quando um alemão contatou Linus perguntando como utilizar o GCC no Linux já que ele possuía apenas 2MB de RAM e era a exata quantidade exigida para executar o GCC. Foi aí que durante três dias Linus trabalhou no desenvolvimento da paginação de disco, vindo a concluí-la no dia 25 de Dezembro de 1991. Isso foi uma revolução no Linux pois não era um qualquer sistema operacional possuía suporte a memória virtual. Daí em diante as pessoas pararam de comparar Linux ao Minix e passaram a compará-lo ao Coherenlt que foi o primeiro clone do Unix na história:

Nota de lançamento do kernel 0.12 descrevendo o comando mkswap adicionado ao mkfs

 A maioria dos comandos desenvolvidos por Linus Torvalds ainda estão presentes nas distribuições e também deram origem a outros pacotes como o util-Linux, o e2fsprogs e o busybox. Hoje em dia, a maioria dos comandos nas distribuições são do próprio Linux:

Comandos de autoria do Linus Torvalds no util-linux

Comandos de autoria do Linus Torvalds no busybox

A ferramenta mais interessante é provavelmente o filesystem checker. E2fsck visa reparar inconsistencias do sistme de arquivos depois de shutdown sujo do sistema. A versão original ddo e2fsck foi baseada no fsck do Linus Torvalds para seu sistema dee arquivos Minix. No entando, a versão atual do e2fsck foi reescrita do zero utilizando a biblioteca do Ext2fs e é mais rápida e pode corrigir mais inconsistencias do sistema de arquivos do que a versão original.
Design and Implementation of the Second Extended Filesystem

Comando badblocks de autoria de Linus Torvalds no pacote e2fsprogs

Linus Torvalds também contribuiu para o comando route

 A partir da versão 0.11 Linux passou de um simples, pequeno e inacabado kernel a um kernel self-hosting contendo os recursos e comandos necessários para a sua administração do sistema, quebrando assim o ciclo do README do kernel 0.01. Mas a comunidade Linux não parou por aí e vocês verão a seguir como a partir destes recursos, a comunidade Linux o evoluiu para um sistema operacional.

 Fato curioso é que Linus havia perdido interesse em continuar o desenvolvimento do Linux até ocorrer o acidente com o Minix. Já pensou se isso não tivesse acontecido ?

 Só com um kernel e as ferramentas do projeto GNU, você não consegue fazer porcaria nenhuma já que o GNU não possui metade das ferramentas necessárias para se ter um sistema operacional.


A evolução do Linux

 Surgiu então a primeira comunidade Linux composta por membros da comunidade Minix. Hoje a comunidade Linux é composta por indivíduos, organizações, instituições governamentais, acadêmicas  e empresariais do mundo todo.

 Sua gigantesca comunidade não o limitou a simplesmente um kernel com comandos e passou a transforma-lo em um verdadeiro sistema operacional desenvolvendo todos os tipos de recursos necessários para isso além de portar ferramentas de outros Unix para Linux (sim, Linux também é um Unix. Aliás, Linux é mais do que um Unix) e receber suporte de outros projetos como é o caso do comando file (que eu não faço ideia de onde o projeto GNU tirou que pertence a eles) e o Shadow. Exemplos de pacotes e comandos do próprio Linux são o at, o Batch (que é uma parte do at), o Linux PAM, o Procps, o Psmisc, o Util-linux, e2fsprogs, iproute2, kmod. De bibliotecas facilmente temos a uclibc, a dietlibc, a musl, newlib e klibc. Existe uma lista enorme somente de bibliotecas C mas poderíamos contar até com mais em outras linguagens. Já mostrei aqui três compiladores além do GCC que compilam o kernel Linux como o tinyCC, o ICC da Intel e o LLVM. Na parte de init systems (BSD, SysVinit, upstart, systemd e etc) também temos uma lista enorme e de carregadores de boot temos outros também. Confiram mais em /pub/linux/utils/ e pub/linux/.

 Uma boa recomendação de leitura é o artigo O dia que Laurent Bercot calou RMS: Eu não uso GNU e seu projeto  

toybox, desenvolvido para Linux e mais tarde portado para FreeBSD

moreutils Uma coleção de ferramentas para Unix que ninguém pensou em escrever

uutils ou rust core utils

Comandos do embutils desenvolvidos para Linux

Comandos do ubase inspirados no util-linux porém mais simples

sbase

minibase

9base port de várias ferramentas originárias do Plan 9 para os Unixes

vcoreutils que é desenvolvido na linguagem V

 Já se passaram 34 anos e muita coisa mudou desde o seu primeiro lançamento. E de tudo o que foi mencionado aqui, sabe o que pertence ao GNU? Nada! Tudo no Linux é uma questão de escolha; opções não faltam.


Kernel: A alma do sistema operacional 

 Se lembram da frase "Algumas destas (ferramemtas) precisam de recursos do kernel" no README lá no início do artigo? Pois é, três coisas podemos mencionar aqui que ocorrem a medida que novos recursos ganham vida no kernel. A primeira é o desenvolvimento de ferramentas para a administração exatamente de recursos do kernel como exemplos os comandos do iproute2 (arpd, bridge, ctstat, devlink, ip, lnstat, nstat, rdma, routef, routel, rtacct, rtmon, rtstat, ss, tc e tipc) para administrar o framework de sub-sistema de redes do Linux; o iptables e nftables para administrar o framework de filtro de pacotes netfilter; os comandos do e2fsprogs (lsattr, chattr, fuse2fs, badblocks, dumpe2fs, e2freefrag, e2fsck, e2image, e2label, e2mmpstatus, e2undo, e4crypt, e4defrag, filefrag, fsck.ext2, fsck.ext3, fsck.ext4, logsave, mke2fs, mkfs.ext2, mkfs.ext3, mkfs.ext4, mklost+found, resize2fs, tune2fs) para a administração de recursos sistemas de arquivos da familia ext*; podemos citar atributos estendidos com o getfattr e o setfattr, ACL POSIX, capabilities e os comandos para administração dos sistemas de arquivos como btrfsprogs, xfsprogs e os próprios comandos fdisk, mkfs, mount e fsck são parte da administração dos sistemas de arquivos; os comandos getenforce, setenforce e até a opção -Z no comando ls são para administrar o SELinux (bom, essa é bem básica do SELinux já que o mundo SELinux é muito maior do que isso); os módulos Apparmor, Tomoyo, MAC e DAC também possuem seus comandos; o comando watchdog para monitorar e gerenciar comportamentos anormais de hardware e software e  automaticamente reset ou rebootar o sistema se necessário utilizam o módulos como softdog e incontáveis outros. No Linux existe até o módulo B.A.T.M.A.N. (better approach to mobile ad-hoc networking) que utiliza os comandos batctlbatman-adv para administração (há também a daemon comando alfred).



 A segunda é o desenvolvimento de ferramentas devido o kernel fornecer recursos para isso. Containers por exemplo são uma mistura dos recursos name space e cgroups (cgroups é fonte de recursos para vários outros programas que utilizamos e uma das principais fontes de recursos para do systemd. O systemd faz uso também do dbus que inclusive é utilizado também na parte de virtualização); o próprio kvm (kernel based virtual machine) como o próprio nome diz é um recurso do kernel para virtualização e que foi adicionado por volta de 2007 (veja na RedHat e na aws); o iproute2 já citado anteriormente, depende de vários recursos do kernel como exemplo a parte de routing policy database (ip rule list e ip route list table local) que depende dos recursos do kernel IP: advanced router e IP: policy routing e o seu IP in IP tunneling que depende dos módulos ipip.o e new_tunnel.o; o novo comando mu (veja também no git) utilizado para exibir o uso de memória por arquivo, depende da systemcall cachestat() do kernel; todos os programas dependem do kernel para serem executados através do recurso ELF (Exectuable and Loadable File) que substituiu o a.out.

 Sabe o shebang (#!) que utilizamos no início de nossos scripts? Pois é! Não é o shell que lê este comentário para interpretar os scripts e sim o kernel através da system call execv (fs/exec.c).

Recursos ELF e #! dentro de Executable file formats no kernel
Recursos ELF e #! dentro de Executable file formats no kernel

 Até o seu navegador depende de recursos do kernel a para sua execução e não estou falando de drivers drivers, estou falando de gerenciamento de processo e memória, acesso ao sistema de arquivos, recursos de segurança como Sandboxing e etc. 

 A terceira é o desenvolvimento de novos programas pegando partes do código do próprio kernel. Citando dois exemplos, na FAQ da dietlibc descreve que é utilizado o layout struct stat do kernel em sua interface. O segundo é no projeto Psmisc (que contém comandos como killall, pidof e pstree) que utilizaram o src/loop.h do pacote util-linux que por sua vez, pegaram do kernel Linux.

 O kernel é mais do que o coração do sistema operacional, ele é a alma do sistema operacional pois seu sistema operacional depende muito mais do kernel do que você imagina. Se só com o kernel não se faz nada, sem o kernel, muito menos. Sem o kernel não há sistema operacional.


Linux: Mais do que um Unix

 Aproveitando que falamos de pegar partes do código do próprio kernel para para a construção de novas ferramentas, quero sugerir meu artigo Linux: Mais do que um Unix onde debato sobre algumas das centenas de system calls da API própria do Linux que lhe proporciona recursos que nenhum outro Unix possui (e nem a API POSIX).


Por que foi propagado que Linux é apenas o kernel?

 Este foi o meio que RMS, a FSF e o projeto GNU resolveram utilizar para virar os holofotes para si, tentar se tornar o centro das atenções e se promover já que ideia de ter um sistema operacional completo falhou. Como Rob Landley menciona no Ohio Talk em 2013:

"Os BSD não é uma ameaça existencial para o Linux, mas o Linux é para o GNU".

 O projeto GNU foi iniciado quase oito anos antes do Linux e como tudo na vida é incerto, o curso da história mudou, Linux tomou proporção que não era esperada e passou a ganhar notoriedade em toda a comunidade de tecnologia que não, proporção essa que todos esperavam que ocorreria para o GNU.

 Sabendo que as pessoas não possuem o hábito de leitura (e esse é o grande declino moral das sociedades), passaram então a explorar este ponto fraco a seu favor. No final das contas, tudo uma questão de vaidade ou outras intenções. O que mais me intriga é ver profissionais de Linux vergonhosamente defenderem este argumento.


Conclusão

 Foi-se o tempo que Linux era somente um kernel. O que começou como um projeto pessoal, um pequeno kernel sem pretensões ou expectativas, apenas uma diversão e um desafio para um hacker aplicar seus conhecimentos, inesperadamente evoluiu e se tornou um verdadeiro sistema operacional contendo comandos, shells, bibliotecas, init systems e até mesmo sua própria API.

 Pode não ser considerado um sistema operacional completo, o que dificilmente algum sistema operacional é (muito menos o GNU) já que em todos os sistemas operacionais (especialmente no GNU que não contém metade das ferramentas necessárias para se ter um sistema operacional funcional) são utilizadas ferramentas de outros sistemas ou de outros projetos pois o compartilhamento de conhecimento e a colaboratividade sempre foram as bases da cultura hacker.

 E se Linux fosse realmente apenas o kernel do sistema operacinal, sabe qual a importância isso teria entre verdadeiros profissionais de tecnologia? NENHUMA! O importante é o sistema funcionar e atender as demandas.

 Já aos que vão vir afirmar que discordam (sempre escuto ou leio isso), só tenho um recado a deixar : Eu não dou a mínima importância para concordância ou discordância. As evidencias estão aí, basta terem maturidade e hábito de leitura. 



QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux




Gabriel Costa: Linux, Cultura Nerd e um pouco de IA



Hoje, 09/08 às 19h, no Pó de Heitor, recebo Gabriel Costa — analista pleno formado em redes com certificações LPI e ITIL4, ex-instrutor de inglês, tradutor e intérprete, e criador dos canais e blogs Toca do Tux e Resenhas Nerd. Entre Linux, cultura geek e tecnologia, Gabriel traz humor, conhecimento técnico e paixão por compartilhar — tudo com muita autenticidade.

Vamos conversar sobre Linux e certificações de redes, os bastidores do Toca do Tux, reflexões nerds entre resenhas, e ainda explorar como IA pode transformar conteúdos técnicos e canais nerds como os dele.


Se você curte tecnologia com alma, esse episódio vai conectar você ao universo geek de um jeito outra chave.


🎙️ New to streaming or looking to level up? Check out StreamYard and get $10 discount! 😍 https://streamyard.com/pal/d/4542624786415616

dietlibc 0.36?

dietlibc 0.36?

dietlibc 0.36?

 Depois do lançamento da versão 0.35 no dia 7 de Novembro do ano passado (3 dias após o lançamento da versão 0.35), a dietlibc recebeu mais três patches e um git request enviados por Friedrich Beckmann que trabalha no provedor de e-mail alemão posteo.de.

 Os dois primeiros patches estão relacionados a arquitetura aarch64. O primeiro trabalhando com o símbolo __clone que é necessário para pthread_internal.c e solucionar o problema que Friedrich notou ao tentar construir gatling no Raspberry Pi linkando-o ao t.c da libowfat; o que acabou reportando missing symbol __clone required pela dietlibc libpthread. O segundo já relacionado ao símbolo __getauxval da libgcc também necessário para aarch64.

 E o ultimo é uma regressão de test de regex do port e adaptação da glibc para a dietlibc: https://github.com/fredowski/dietlibc/tree/fredo

 Já o pull requeste corrige alguns bugs de expressões regulares. Alguns testes foram portados da glibc

https://github.com/fredowski/dietlibc/compare/master...regex


 Torço para que em breve tenhamos um novo lançamento da dietlibc.


Mais sobre a diet libc pode ser conferido aqui no blog

A dietlibc também pode ser conferido na série muito além do GNU


QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux

Cadillacs and dinosaurs para Mega Drive

 Resolvi fazer uma pequena #gameplay do jogo Cadillacs and dinosaurs portado para Mega Drive que eu havia mencionado na última live



 Apesar de eu possuir a ROM não pretendo disponibiliza-la por questão de direitos autorais que é pelo mesmo motivo pelo qual o autor do #port (ou demake ) desabilitou o download

Link para o site oficial do autor do port de Cadillacs and dinosaurs para o mega drive


QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)
QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux

 



11º Workshop internacional sobre Plan 9



 Entre os dias 22 a 24 de Maio de 2025 acontecerá o 11º Workshop internacional sobre Plan 9. Esse workshop ocorrerá desta vez na Cnam (Conservatoire national des arts et métiers) na França e será transmitido no canal Plan 9 Foundation. Todo o cronograma pode ser conferido clicando aqui.


 Esse Workshop tem como objetivo trazer pesquisadores, desenvolvedores e estudantes que trabalham nos sistemas operacional Plan 9 e Inferno, nos protocolos da família 9P (que é utilizado no WSL) e tecnologias relacionadas para discutir avanços nestes campos, ideias para melhorias, aplicações e impacto dessas ideias na comunidade da ciência da computação e trabalhar em problemas identificados nestes dois dias ou durante debates.

 O grande foco neste ano será segurança, criptografia, autenticação, fault tolerance, robustez, detecção de erros e remediação, confiabilidade e etc. O segundo ponto sera histórias derivativas e seu impacto no ambiente corporativo. também ocorrerá hackthon e trabalhos em progresso.


11th International Workshop on Plan 9


QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)
QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux

Lançado DragonFly 6.4.2

DragonFly 6.4.2 released

Lançado DragonFly 6.4.2


 Mal foi lançado o DragonflyBSD 6.4.1 e já recebemos a atualização da versão 6.4.2. Esta versão traz poucas mudanças adicionando correções ao instalador que agora lê o tamanho real dos discos e que anteriormente, devido o QEMU reportar (ou ao menos reportava) uma geometria de disco em um estilo antigo (de no máximo 8 gig), o instalador criava um volumes muito pequenos; correções no ipv6 que geravam panics quando utilizado em certas circunstancias, correções em programas userland que criam muitos subprocessos e causavam crashes quando um programa cria um número desses processos, muito constatado no neovim e no Chrome (o que no Chrome não seria nenhuma novidade).


Mais sobre o DragonFlyBSD pode ser conferido clicando aqui

gitweb.dragonflybsd.org Git - dragonfly.git/log

Release v6.4.1 · DragonFlyBSD/DragonFlyBSD

DragonFly BSD - avalon home!

DragonFly BSD - avalon home!

Mais sobre os BSDs aqui no blog

DragonFlyBSD: release64


QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)
QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux

#ubuntu se livrando do #gnu?




 Em Fevereiro de 2023 eu postei o artigo uutils: Um coreutils escrito na linguagem Rust, um coreutils desenvolvido na linguagem Rust por um desenvolvedor do Debian. Minha analise pode ser conferida neste link que, na época eu não achei muito interessante porém, esse ano a Canonical resolveu substituir o Coreutils do GNU pelo uutils (ou também chamado de Rust Coreutils).




Lançado DragonFlyBSD 6.4.1

Lançado DragonFlyBSD 6.4.1

Lançado DragonFlyBSD 6.4.1


No dia 30 de Abril foi lançada a versão 6.4.1 do sistema operacional DragonFlyBSD, depois de um bom tempo já que a versão 6.4.0 foi lançada em Janeiro de 2023. Para quem não conhece, o DragonFlyBSD é um fork do FreeBSD focado em desempenho. Eu tenho um vídeo no meu canal explicando sobre seu sistema de arquivos e outras coisas que o levaram a ter desempenho similar ao do Linux sendo um deles, o sistema de arquivos Hammer. Foi um vídeo interessante já que respondi a pergunta de um inscrito e desmenti o que foi dito por um dev do FreeBSD no meu canal.


 Apesar de este ser um lançamento com correções de pequenos e duradouros, se trata de um total de 77 correções sendo 41 Aaron LI e 20 do próprio Matthew Dillon. De forma resumida, algumas das novidades entre tantas estão a correção do erro que o pkg update pode excluir o arquivo de configuração df-latetest.conf e que torna o pkg inutilizável; atualizaram o pacote ca_root_nss tornando assim os novos certificados Let's Encrypt mais confiáveis e podendo o pkg trabalhar com repositórios Avalon; correção no vazamento de memória nos drivers legado IDE/NATA que poderiam causar kernel panics; expor o ponto de entrada SMBIOS via kenv para que o dmidecode(8) funcione em UEFI-only.

 Algo que eu ainda espero um dia ver é o DragonFlyBSD portado para a arquitetura ARM.

Mais sobre o DragonFlyBSD pode ser conferido clicando aqui

gitweb.dragonflybsd.org Git - dragonfly.git/log

Release v6.4.1 · DragonFlyBSD/DragonFlyBSD

DragonFly BSD - avalon home!

DragonFly BSD - avalon home!

Mais sobre os BSDs aqui no blog

DragonFlyBSD: release64


Lançado Nim 2.2.4

Nim versions 2.2.4 and 2.0.16 released

Lançado Nim 2.2.4

 No dia 22 de Abril foi anunciado o lançamento da versão 2.2.4 da linguagem Nim, dois meses e meio após o lançamento da versão 2.2.2. Alias, foram lançadas duas versõe; a v2.2.4 vem com 108 commits com correções de bugs e melhorias e a versão 2.0.16 contendo 31 commits contendo correções de bugs (8 no total que podem ser conferidas clicando aqui). Apesar do lançamento da versão 2.0.16, a equipe Nim encoraja a todos migrarem para a v2.2 já que esta tras melhorias significativas no gerenciamento de memória ORC, melhorias para a linguagem em si e seu compilador.

Todas as melhorias na versão 2.2.4 podem ser conferidas clicando aqui.

As informações completas das do lançamento das versões 2.2.4 e 2.0.16 podem ser conferidas no Nim Blog

Mais sobre a linguagem Nim pode ser conferida também aqui no blog


QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)
QUER APRENDER LINUX? ENTÃO CONFIRA O MEU CURSO DE MIGRAÇÃO PARA LINUX CLICANDO AQUI :)

Lançado novo Minicurso de atributos no Linux
E não esqueçam de conferir também o meu mini curso de atributos no Linux

Marcadores

A pior história sobre Linux que já ouvi (6) A.I (2) ambiente gráfico (19) AMD (14) analise (10) Andriod (16) android (7) Apple (1) arm (5) artigo (5) aws (1) bc (23) benchmark (6) BetrFS (1) blackhat (1) BSDs (34) btrfs (32) bugs (2) Caixa de Ferramentas do UNIX (19) canto do Diego Lins (2) certificações Linux (7) Código Fonte (54) comandos (33) comp (1) compressores (9) container (8) CPU (19) cracker (1) criptografia (5) crowdfunding (9) cursos (24) daemons (13) Debian (31) desempenho (2) desenvolvimento (100) desktop (19) DevOps (3) DevSecOps (4) dic (1) Dica de leitura (91) dica DLins (2) dicas do Flávio (27) Dicas TechWarn (1) diet libc (4) diocast (1) dioliunx (3) distribuições Linux (14) Docker (13) DragonflyBSD (24) driver (2) dropbear (3) ead Diolinux (2) edição de vídeo (5) embarcados (1) EMMI Linux (4) emuladores (9) endless (5) English interview (3) Enless OS (2) entrevista (17) espaço aberto (82) evento (6) facebook (1) Fedora (11) filesystem (82) financiamento coletivo (2) fork (4) fox n forests (4) FreeBSD (21) Funtoo Linux (13) games (94) garbage collector (1) gerenciadores de pacotes (4) glaucus (8) GOG (3) google (9) gpu (3) hacker (2) hardware (104) hash (1) helenos (3) I.A (1) init system (12) Intel (15) inteligencia artificial (2) IoT (1) ispconfig (1) jogos (38) kde (1) kernel (141) lançamento (64) leis (1) LFCS (1) libs (2) licenças (10) Linus (16) linus torvalds (2) Linux (194) linux foundation (3) linux para leigos (1) live (5) lkgr (1) LPI (8) LTS (1) Mac (1) machine learning (1) matemática (9) mesa redonda (27) microcontroladores (1) microsoft (6) microst (1) muito além do GNU (176) musl (3) não viva de boatos (9) navegadores (5) NetBSD (7) newlib (1) nim (9) nimlang (1) nintendo (1) novatec (17) novidades (1) nuvem (1) o meu ambiente de trabalho (3) off-topic (12) ONLYOFFICE (4) open source (85) OpenBSD (8) OpenShift (1) oracle (1) os vários sabores de Linux (45) padrim (2) palestras e eventos (5) partições (6) pentest (8) performance (1) pipewire (1) plan9 (3) playstation (1) processadores (30) professor Augusto Manzano (11) Programação (71) promoção (1) propagandas com Linux (8) ps4 (1) real-time. (1) Red Hat (23) redes (4) resenha nerd (4) Resumo da Semana do Dlins (2) resumo do Tux (19) retrospectiva Linux (1) risc-V (14) RISCV (13) rtos (1) runlevel (2) rust (16) segurança digital (27) servidor web (2) servidores (3) shell (10) shell script (8) sistema operacional (25) skarnet (2) smartphones (3) Software livre e de código aberto (152) sorteio (3) Steam (10) Steam no Linux (8) supercomputadores (4) suse (7) systemd (8) terminal (89) terminal de comandos (20) toca do tux (1) toybox (28) tutorial (6) Tux (3) unboxing (7) UNIX (17) UNIX Toolbox (14) vartroy (1) vga (1) virtualização (3) vulnerabilidade (6) wayland (5) web (1) whatsapp (1) whitehat (1) Windows Subsystem for Linux (2) wine (14) WoT (1) yash (1) ZFS (16) zsh (3)