- Maestro é um kernel e sistema operacional semelhante ao Unix, escrito do zero na linguagem Rust.
- Inicialmente foi implementado em C, mas a mudança para Rust ocorreu quando ficou difícil manter a base de código limpa.
- Rust foi uma escolha mais inovadora do que reiniciar o projeto do zero e escrever, em C, um kernel semelhante ao Linux, além de ajudar a reduzir a dificuldade da programação de kernel ao aproveitar a segurança da linguagem.
Estado atual do projeto
- Atualmente, o Maestro é um kernel monolítico que oferece suporte apenas à arquitetura x86 (32 bits).
- No momento da escrita, cerca de 135 chamadas de sistema do Linux, equivalentes a aproximadamente 31% do total, estão implementadas de forma aproximada.
- Além do kernel, o sistema operacional inclui componentes como o sistema de boot e gerenciador de daemons Solfège, os utilitários de sistema maestro-utils e o gerenciador de pacotes blimp.
- Softwares de terceiros como musl (biblioteca padrão C), bash, alguns comandos do GNU coreutils e neofetch (versão com patch) foram testados e funcionam no sistema operacional.
Teste você mesmo!
- O sistema operacional ainda está em estágio inicial de desenvolvimento e é muito instável, portanto não é recomendado instalá-lo em máquinas com dados importantes.
- Ele foi testado principalmente no QEMU, VMWare e VirtualBox.
- Há duas formas de instalar o sistema operacional: baixar um arquivo
.iso pré-compilado ou compilar a ISO manualmente.
- Os pacotes instalados são armazenados na RAM (
initramsfs) em vez de no disco, então é necessário ter RAM suficiente (1 GB ou mais).
Sobre este blog
- O objetivo deste blog não é escrever um tutorial sobre como criar um sistema operacional, mas explorar temas mais avançados, compartilhar formas de resolver problemas e descobrir como funcionam computadores, sistemas operacionais, a internet e outros elementos.
- Recomenda-se especialmente o osdev.org e o blog de Philipp Oppermann.
O que vem a seguir
- A base de código precisa ser organizada e otimizada em termos de desempenho.
- Correções de vazamento de memória e otimizações de performance podem se tornar temas de artigos no blog.
- O próximo objetivo é fazer com que o gerenciador de pacotes funcione completamente no sistema operacional.
- Também são necessários suporte a rede e suporte a bibliotecas compartilhadas.
Como ajudar
- Você pode acompanhar o projeto deixando uma estrela no repositório do Github, assinando a newsletter, seguindo o feed RSS e participando do Discord.
Opinião do GN⁺
- O projeto Maestro é um sistema operacional semelhante ao Unix, escrito em Rust, e se destaca por buscar mais segurança e inovação no desenvolvimento de kernels.
- O projeto oferece uma oportunidade interessante para desenvolvedores que desejam contribuir com a comunidade open source e pode ajudar a entender a interação entre hardware e software na prática.
- Também pode servir como um material de aprendizado útil para engenheiros de software iniciantes que queiram experimentar, na prática, as vantagens e limitações da programação de sistemas com Rust.
1 comentários
Comentários do Hacker News
Agradecimento pelo apoio ao projeto
Comentário sobre um ótimo projeto pequeno
Comentário sobre segurança/testes de intrusão
Menção ao projeto Kerla
Comentário sobre as desvantagens de usar C e a dificuldade do desenvolvimento de SO
Menção à descontinuação do projeto Kerla
Comentário sobre a complexidade dos computadores
Conselho sobre quitar dívida técnica
Interesse no Gource
Interesse em construir um kernel