Fala mano, blezinha?

Cara, o que você precisou aprender/estudar para criar a distro? Poderia dar um help? Qual passo a passo aconselharia?

E ai!

Acho que os estudos podem ser divididos em 4:

  • toolchain
  • processo de carregamento linux
  • outras distros
  • unix

Agora em mais detalhes: toolchain é o conjunto de bibliotecas e compiladores necessarios para compilar o restante do sistema, eu tinha usado LFS um tempo atras, ja li inteiro inumeras vezes; tambem estudei os projetos buildroot, busybox, toybox para ter uma ideia de como se constroi uma toolchain. Recomendo comecar pelo LFS, ele ensina muito bem.

O processo de carregamento linux eu estudei para algumas arquiteturas, amd64 e arm64, o segundo é mais chatinho pois nao tem um padrao, ai estudei com o hardware que eu tenho em casa. Ai precisa estudar as etapas de carregamento, device trees e o init.

Outras distros eu li codigo fonte delas, o build e algumas imagens.

Unix precisa estudar alguns padroes e as ferramentas mais usadas. Tambem é legal saber como funciona o filesystem padrao, tipo os pontos /sys, /proc etc.

O LFS fala um pouco sobre isso, mas o bom mesmo é ler livros de OS dev, por exemplo o livro do minix, do Tanembaum, o livro de C do K&R tambem fala bastante sobre sistemas. E por ai vai.

Espero que tenha ajudado.

Abracos

Nossa, muito obrigado! Rapaz, gosto muito desse universo, vou dar um jeitinho e separar no mínimo um dia na semana para começar a pesquisar as suas recomendações e fazer um conograma de estudos. Você tem algum canal no youtube, algum lugar onde posso lhe acompanhar mais de perto? Um abraço!
Fico feliz em ajudar. Nao tenho youtube, a unica maneira que estou divulgando eh pelo meu blog, aqui e um pouco no meu github, porem estou evitando plataformas comerciais. No meu blog eu publico algumas coisas sobre o desenvolvimento, vou tentar fazer isso com maior frequencia e detalhes. Fique a vontade para me mandar emails, abrir issues no github, ou perguntar aqui e no meu blog. *** Referencias 1. [meu blog](https://blog.terminal.pink) 2. [github](https://github.com/blmayer) 3. [email](mailto:brian@terminal.pink)