Gostaria de uma indicação de vocês. ( “A advise, if i can say that.” )
Quero estudar a linguagem que foi desenvolvida o linux. Sei que o linux é codigo aberto, então posso modifica-lo como bem eu entender. ( Me corrijam se eu estiver errado )
OK… são 2 coisas que gostaria de saber…
Qual é a linguagem contida no linux!? Alguem me indicaria uma comunidade ( como esta ) ou um forum para eu poder começar a estudar???
Qual a versão ou a distribuição ( Não sei ao certo o q eh correto dizer entre os 2. ) ideal para eu poder começar a “fuçar” e começar a modifica-lo"?
Pretendo criar um sistema so meu. Um sistema personalizado.
A linguagem utilizada pelo Linux é C, misturada a instruções Assembler, não tem mistério!
Você está fazendo ou fez curso superior? Já ouviu falar em uma matéria chamada Sistemas Operacionais? Você sabe o que realmente um Sistema Operacional faz?
Todo o mundo é livre para olhar o código e modificá-lo, mas é uma compreensão que poucos possuem. A maioria pode aprender a USAR o sistema operacional, a ajudar a reportar erros, e a configurar da maneira que bem entender.
Obrigado. Tenho dedicado somente a linguagem java. Agora que me disponibilizei de um pequeno tempo, vou começar a estudar C.
[quote=Leonardo3001]
Você está fazendo ou fez curso superior? Já ouviu falar em uma matéria chamada Sistemas Operacionais? Você sabe o que realmente um Sistema Operacional faz?[/quote]
Ainda vou chegar na matéria de Sistemas Operacionais, mas felizmente tenho sim uma noção do que o sistema operacional faz.
[quote=Leonardo3001]
Todo o mundo é livre para olhar o código e modificá-lo, mas é uma compreensão que poucos possuem. A maioria pode aprender a USAR o sistema operacional, a ajudar a reportar erros, e a configurar da maneira que bem entender.[/quote]
Me desculpe a pergunta, mas o que você quer dizer com:
???
Não sei se eu entendi certo ou errado o que você quis dizer.
Ajudar a reportar erros:
Pode-se descobrir falhas (de seguranca, etc) usando o sistema ou analisando o código do sistema. Caso descubra, reporte os desenvolvedores e com certeza terá sua glória.
Já será muito valorizado se puder achar um erro no “codigo” do kernel do linux. É bem dificil, não é para qualquer um.
Ao meu ver, ele quis dizer que aprender a usar o linux em todo seu potencial já é algo dificil, quanto mais explorá-lo e achar erros nele.
Agora, imagine criar um sistema operacional ?!
Para tudo se começa um dia, entao para fazer o que deseja aconselho algum livro sobre o kernel do linux (na verdade 2, um iniciante e um avancado posteriormente) e um sobre sistemas operacionais (aconselho o do tanenbaum). Se já tiver conhecimento anterior que te de embasamento para rápido entendimento dos livros, vai pra frente
Antes de pensar em fazer algo tão complexo pode começar pelo simples: Aprender a usar o sistema operacional, para isso escolha qualquer distribuição que consiga instalar…e vá usando os aplicativos nela e se familiarizando…em paralelo começe a programar na sua distribuição usando algum editor e o gcc (compilador padrão de sistemas baseados em unix como o linux). Quando tiver bom dominio do sistema (ja saber configurar ele de forma personalizada por exemplo) pode partir para a leitura desse livro, que é a basico para fazer o que vc deseja no futuro.
Bom estudo, mas lembre-se: para chegar ao nível de criar um sistema operacional personalizado, mesmo utilizando a arquitetura toda de um já existente requer muito conhecimento.
renan_,
Agora sim entendi. Pode ter certeza de que o farei.
rafaelglauber,
Eu ja trabalhei com o mandriva e o ubuntu. Não vi muita diferença, pois no inicio eu não tinha conhecimento sobre Sistema Operacional. ainda mais do linux. Mas pode ter certeza que vou estudar muito e quando começar a modificar um “linux”… vou dedicar 1 ano ( um prazo determinado que eu estipulei para minha visão ) para realizar meu objetivo.
Agora… a minha única dúvida é saber escolher qual distribuição. Digo que não sei ql distribuição é “melhor” ou “pior”… qual tem mais erros, ou mais falhas, etc. Se fosse pra escolher iria pelo mandriva. ( foi o que eu fiz um curso basico sobre ele. )
Oi.
Uma coisa é certa: modificar o kernel do Linux desenvolvendo algo novo não é tarefa fácil. Procure a primeira versão do Kernel (não a 1.0, mas sim as 0.xs) e veja como os recursos funcionam. Já são meio deprecated, mas naquele tempo, a alocação em C era feita com alloc e as posições de memória. Tem idéia do que é isso? Algo desse tipo (não sei, é DESSE TIPO, nunca usei alloc):
É um trampo do tamanho do mundo. Hoje já existem outras funções em C que fazem isso, como malloc, realloc, calloc e free.
Se você quiser estudar a fundo mesmo, pra trabalhar com isso o resto da sua vida, dê uma olhada nos fontes.
Se você quiser estudar C dessa forma (meio indireta), continue. Um bom tutorial de C tá aqui: www.java2s.com
Agora, se você quer montar um Linux que é a sua cara e aprender mais ‘superficialmente’, use o Linux From Sratch: http://www.linuxfromscratch.org/
Abraço.
editado
Na minha opinião, não existe ‘melhor distribuição’. É como você perguntar qual a melhor linguagem. Existe um propósito pra cada uma (claro que algumas tem o mesmo propósito).
Por exemplo, Ubuntu e seus derivados (Xubuntu, Kubuntu e Edubuntu que, por sinal, não sei se existe ainda) são fáceis de mexer, portanto são distros destinadas ao usuário final.
Slackware, na minha opinião, é a que você deve escolher se quiser aprender. Gentoo e Debian entram também nessa parte. Usei o Slack por um ano no Desktop e agora que uso Notebook não consegui configurar a placa de vídeo (maldita positivo). Tem coisas muito complexas, mas você corre atrás e aprende.