Desenvolvimento de sistema Linux

Ola…
E sou um estudante de engenharia de software então eu conheço um pouco sobre linguagem de programação e desenvolvimento de aplicativos mas eu nunca entendi muito bem como funciona o desenvolvimento de sistemas operacionais, principalmente tenho curiosidade de saber como funciona o desenvolvimento de sistemas utilizando o kernel Linux e/ou utilizando um outro sistema como base (como o elementary usa a base ubuntu)
Gostaria que, se possível, vocês me indicassem livros ou artigos (ou qualquer outra coisa) onde eu possa aprender como funciona isso
Agradeço desde já.

1 curtida

Olá :wave:
Para iniciar, acho que o conteúdo do GuiaFoca bem tranquilo e didático. Outro lugar para se aprender bastante é na documentação do Arch Linux, a ArchWiki. Se for usuário de longa data do Windows e quiser testar de forma mais suave como funciona Linux, seus comandos básicos, hierarquia de pastas, etc, você pode instalar o Ubuntu pelo WSL2 e ir acostumando-se por lá até se sentir confortável o suficiente para instalar uma distro em dual boot ou uso exclusivo. Como estudante de ciência da computação, não volto a usar Windows para programar em 99% dos casos, Linux é um caminho sem volta.

3 curtidas

Desenvolvimento de uma distro Linux…
Ia dizer q o Linux from Scratch te ajudaria, mas talvez seu caso seja mais interessante estudar sobre o kernel e projetos, como Red Hat, Plasma, Gnome, etc…

4 curtidas

Se a sua área é estudar código, comesse dando uma olhada em código fonte como o Daigo sugeri-o.
O código fonte do nucléo Linux é esse: https://kernel.org/
Eu imagino que você saiba o que é o kernel Linux, mas para se alguém que vier neste tópico e não saiba ele é o a interface que passa as instruções dos processos para o hardware executar. Ele é o software que lida com o hardware. Linux (núcleo) – Wikipédia, a enciclopédia livre

Agora como montar um GNU/Linux a partir da compilação de software já existente leia o livro Linux From Scratch seguindo esse passo a passo você tera no final um OS Linux funcional: Linux From Scratch – Wikipédia, a enciclopédia livre

3 curtidas

Eu não sei muito bem qual vai ser o seu objetivo no estudo, se é aprender como desenvolver um SO programando ou se é entender a estrutura para tal.

Não posso afirmar com certeza, mas quase todas as distros possuem github, você pode começar seus estudos pelo código do sistema.

A maior documentação linux no momento se encontra no ArchWiki da distro Archlinux, não é 100% funcional para todas as distribuições, visto que pode ser implementado de outra forma, porém abrange a grande maioria dos casos.

1 curtida

É ele não foi especifico sobre o que ele quer estudar.

1 curtida

Quando se diz que uma distro utiliza a base de outra distro, nada mais é do que:

  • utilizar os pacotes curados por terceiros, pode ser redistribuindo pelo repositório de terceiro, ou criando uma cópia do repositório (espelhando) para seus servidores, acrescentando suas personalizações pessoais.
  • Você tem muito menos trabalho, visto que tem que focar apenas nos pacotes que você alterou ou criou, sendo que a distro base que fornece os milhares de pacotes e soluciona os bugs dos mesmo.

Tem projetos que cópia todo o sistema, altera o tema, ícones e papel de parede e lança com outro nome, não acrescentando nada além de uma customização visual

1 curtida

Eu quero saber como desenvolver um SO

Desenvolver ai você vai ter que ler livros de programação e ler código fonte.
Pode começar pelo kernel Linux se quiser aprender a desenvolver driver de hardware.

1 curtida

Obrigado pelas dicas

Você pode pegar a lista dos software para estudar o código fonte mínimo necessário para ter um sistema operacional funcional.
Abrindo o livro vai ter uma lista de código fonte a se compilar. Dai você começa a estudar estes códigos mínimo para montar um OS Linux.
O livro é Linux From Scratch esta o link da wiki ai em cima e na wiki tem o site de onde baixar o livro.

1 curtida

@erickson_daveiga o LFS não aborda como adicionar um ambiente desktop, para isso você tera que seguir o BLFS é um outro livro mas que lida com os software de desktop enviroment.

3 curtidas

Já baixei os dois livros pra começar a ler
Muito obrigado pelas dicas (a todos)

2 curtidas

Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.