Executando verificação de segurança...
27

Para combater seu vício em drogas ele construiu um sistema operacional

Sim, esse título foi inspirado em um episódio de Clarêncio, o otimista chamado Barco dos Sonhos. E se você acompanha o canal do Andreas Kling deve saber sobre o que eu estou falando.

É triste observar que a inteligência muitas vezes não é sinônimo de felicidade. Em vez disso, pode gerar tristeza, amargura ou outras formas de melancolia. Isso é evidente tanto em perspectivas teístas quanto ateístas.

Para os teístas, especialmente aqueles de origem monoteísta abraâmica, há uma passagem em Eclesiastes 1:18 NVI que diz: "Porque no acúmulo de sabedoria, acumula-se tristeza, e quem aumenta a ciência, aumenta a dor"’.

Por outro lado, uma perspectiva ateísta pode ser resumida por um pensamento atribuído a Melanie Klein: "Quem come do fruto do conhecimento é sempre expulso de algum paraíso."


Andreas Kling antes de entrar em seu projeto SerenityOS projeto tal que busca implementar um sistema operacional moderno em Unix, usando a aparência de sistemas operacionais dos anos 90 trabalhou para Nokia e para Google.

SerenityOS Exemplo

Originalmente o SerenityOS foi um Hobby Osdev que foi criado especificamente para atender seu criador Andreas Kling, mas atualmente o objetivo mudou sendo que o mesmo atraiu uma comunidade de pessoas que estão constantemente contribuindo ao mesmo.

Inclusive, para atender a comunidade foi se criado uma linguagem de programação específica para o Serenity chamada Jakt que transpila para C++


Foi a graças ao SerenityOS e ao Andreas Kling que repensei muito em meu projeto de OSDEV que você pode ver em ambos os posts:

Afinal, quando você pensaria em utilizar o sistema de Smart Pointers bem, eu nunca pensaria até ver o que Andreas Kling fez no serenityOS. Uma implementação ffreestanding de um ponteiro inteligente para gerenciar a memória virtual.

Smart Pointer in Kernel Level

Isso prova uma coisa em específico, podemos ter novos projetos osdev com memory-safety ou quase isso. Levando em consideração claro que a forma de garantir a segurança da memória é utilizando um ARC. Se você é experiente em C/C++ pode querer dar uma olhada na implementação dos ponteiros inteligentes.

Dentre outras firulas do serenityOS. Eu mesmo programo mais em Golang do que em C++, mas ainda achei o uso de c++ moderno mais elegante do que o equivalente em C.

Certo de que C tem a maior performance bruta, eu posso afirmar com total certeza que C++ tem a maior memory-safety e não é tão limitado quando Rust e seu unsafe.

Mas tem momentos em que C++ não é o suficiente para ser uma lib de alta performance e sabemos que C é uma opção insegura para memória então passamos a usar Rust como substituto e linguagem secundaria como feito no Linux.

Enfim, se você é um entusiasta em sistema operacionais assim como eu, gostaria provavelmente de dar uma chance ao canal do Andreas Kling e ao seu Blog

Carregando publicação patrocinada...
3

Muito legal ver o Andreas Kling sendo mencionado aqui. A história dele é muito inspiradora e dá pra aprender bastante com o conteúdo dele. Conhecimento que vai diretamente na teoria dos livros que a gente vê na faculdade. Acho muito importante sair um pouco da bolha web pra entender como as coisas funcionam por debaixo dos panos.

Outro projeto que está dentro do Serenity é o Ladybird, um navegador web com uma engine própria. Aqui o Andreas vai contra tudo e todos que dizem ser impossível criar um novo navegador que não seja baseado em Chromium. [1]

Além disso, como você demonstrou, é possível tirar alguns insights sobre desenvolvimento de software, prototipagem e programação recreacional. Sobre isso o Thorsten Ball fez um ótimo post sobre um dos vídeos do Andreas, onde ele começa a desenvolver um compilador JIT para a engine do Ladybird[2]. É interessante ver como ele domina as ferramentas que utiliza e não é o "co-pilot do copilot", ele realmente usa como um auxílio e não como uma verdade absoluta.

[1] https://awesomekling.substack.com/p/how-were-building-a-browser-when

[2] https://registerspill.thorstenball.com/p/playful-programming

2