Sobre a condenação de Hans Reiser

On the conviction of Hans Reiser

Autor original: Jonathan Corbet

Publicado originalmente no: https://lwn.net/

Tradução: Roberto Bechtlufft

No dia 28 de abril, um júri da Califórnia condenou Hans Reiser por assassinato em primeiro grau. Houve muita especulação da impressa, antes e depois da condenação, quanto ao que significaria a perda de Reiser para a comunidade Linux. Mas nessa especulação toda parece que faltou conhecimento sobre qual era o verdadeiro papel de Hans Reiser na comunidade. Como editor, não vou assumir uma posição sobre a condenação ter sido ou não justa e correta. Mas há coisas a serem ditas sobre o que ela vai significar.

Hans Reiser é o criador (e de certo modo, também era o implementador) do sistema de arquivos reiserfs. Ao ser unido ao kernel, o reiserfs distinguiu-se por ser o primeiro sistema de arquivos com journaling para o Linux voltado para uso geral; ele também oferecia bom desempenho em certas circunstâncias, como no gerenciamento de um grande número de arquivos pequenos. O reiserfs foi bastante usado, além de ter sido adotado por vários distribuidores. Sem dúvidas, ainda existem muitos sistemas rodando com o reiserfs por aí.

Mas o papel de Reiser no desenvolvimento e manutenção do reiserfs acabou há alguns anos. Reiser parou de trabalhar nele quando o desenvolvimento do Reiser4 começou, e chegou a se opor à incorporação de melhorias sugeridas por terceiros. O reiserfs ainda é mantido mesmo sem seu criador, mas já não há muito interesse em se acrescentar funções a ele. O reiserfs está chegando ao fim, e os acontecimentos desta semana não devem ajudar muito.

Há uma preocupação maior com o destino do Reiser4, o sistema de arquivos de próxima geração de Reiser. Muita gente tem sugerido que os eventos recentes marcam o fim do projeto, mas é bom darmos uma olhada mais completa nessa história. O Reiser4 não é exatamente novo; foi postado pela primeira vez em 2002. Reiser realizou esforços mal-sucedidos para incorporar o Reiser4 ao kernel 2.6.0 e a versões posteriores. Ele culpou interesses comerciais e políticos por sua falta de sucesso, mas a realidade é mais simples.

O Reiser4 tentou fazer muitas coisas diferentes de outros sistemas de arquivo. Ele incluiu semântica não-POSIX que fez parte da comunidade de desenvolvimento protestar. Havia uma chamada de sistema multipropósito no Reiser4() que implementava uma vasta gama de recursos e incluía um interpretador incorporado ao kernel para uma linguagem especial. Havia um mecanismo de plugins de baixo nível que causava preocupações (nem sempre justificadas) quantos a vários formatos de disco e formatos proprietários. O Reiser4 fez muitas coisas ao nível do sistema de arquivos que outros achavam ser melhor fazer ao nível do sistema de arquivos virtual. O recurso “arquivos e diretórios”, além de parecer estranho para muitos, abria margem para uma série de cenários triviais de impasse (o famoso deadlock).

Resumindo, o código definitivamente não estava pronto para ser incluído no kernel. Os projetos de desenvolvimento do kernel feitos de maneira isolada muitas vezes encontram esse tipo de surpresa quando são em fim postados para a comunidade de desenvolvimento.

Nos anos seguintes o desenvolvimento do Reiser4 continuou. Muitos dos problemas foram resolvidos com a remoção das funções que faziam do Reiser4 único, o que acabou por transformá-lo em um sistema de arquivos como qualquer outro. Se o Reiser4 é só mais um sistema de arquivos, então as atenções se voltam para o desempenho, e muitas pessoas afirmam que os resultados de seus benchmarks foram diferentes dos divulgados por Reiser. O interesse da comunidade pelo sistema de arquivos foi diminuindo, e o ritmo de desenvolvimento também. Os esforços para incorporar o Reiser4 ao kernel ainda existiam quando Reiser foi preso, mas já andavam em marcha lenta.

O maior obstáculo à inclusão do Reiser4 talvez tenha sido sua postura combativa em relação ao resto da comunidade. Quando os desenvolvedores apontavam falhas no Reiser4, Reiser costumava questionar os motivos do desenvolvedor para reclamar ao invés de dar atenção ao que ele estava dizendo. Sua interação com a comunidade costumava resumir-se a declarações como:

O que o faz pensar que os desenvolvedores do kernel tem um conhecimento profundo sobre o valor da conectividade no sistema operacional? Eles não têm. O desenvolvedor médio do kernel não é muito esperto.

As coisas chegaram a um ponto em que vários desenvolvedores desistiram de discutir com ele. Ao rejeitar a comunidade de desenvolvimento, Reiser tornou-se um eterno estrangeiro dentro dela.

É por isso que os efeitos práticos da condenação de Reiser sobre a comunidade serão pequenos, ao menos a curto prazo. Por mais brilhante que tenha sido, sua eficiência foi limitada por seu desrespeito pelo resto da comunidade e por sua convicção de estar sempre com a razão. Ele poderia ter conseguido muito mais se adotasse uma postura diferente.

Tendo dito isso, a perda de Reiser é uma infelicidade. Ele provou ser capaz, por muitos anos, de levantar fundos para o trabalho no sistema de arquivos do Linux, trabalho do qual a comunidade se beneficiou. Alguns desenvolvedores do Reiser4 ainda têm interesse em trabalhar no código, e continuam enviando patches. Mas não há mais ninguém pagando a eles pelo seu trabalho, o que põe tudo em risco. Há limites quanto ao tempo em que o desenvolvimento apaixonado do Reiser4 pode prosseguir.

Mas a maior perda está em outro lugar. Mais do que qualquer um, Reiser pensou muito sobre como nossos sistemas de arquivos deveriam ser no futuro. Ele via os sistemas de arquivos como uma maneira de tornar nossos sistemas mais poderosos do que são agora. Em um mundo onde o sistema de arquivos fosse o único espaço de nomes que significasse alguma coisa para o sistema, todos os objetos seriam iguais e o números de conexões potenciais entre eles explodiria. Seu objetivo a longo prazo não era (apenas) resultados de benchmarks, mas sim criar um sistema de arquivos que funcionasse como esse espaço de nomes que englobasse tudo. Era uma idéia radical e, talvez, nem um pouco prática. Mas o futuro vem de idéias como essa.

Após alguns anos de relativo marasmo, temos agora bastante atividade nos sistemas de arquivos do Linux. Os desafios neste campo são grandes, mas temos desenvolvedores bem capacitados trabalhando nos problemas e não há dúvidas de que os sistemas de arquivos do Linux continuarão a figurar entre os melhores. Mas a comunidade perdeu uma voz que, com todos os seus defeitos, tinha coisas únicas e inovadoras a dizer, e todos saímos perdendo com isso.

Créditos a Jonathan Corbethttps://lwn.net/

Tradução por Roberto Bechtlufft <robertobech at gmail.com>

Postado por
Siga em:
Compartilhe
Deixe seu comentário
Assine nossa Newsletter
Assine nossa newsletter e receba nossa seleção de conteúdo sobre tecnologia, games, IA e internet em seu email.
Veja também
Publicações Relacionadas
Img de rastreio
Localize algo no site!