Jump to content


Photo

C Em Criação De So?


  • Faça o login para participar
4 replies to this topic

#1 Arthur XD

Arthur XD

    Turista

  • Usuários
  • 28 posts
  • Sexo:Não informado

Posted 14/08/2009, 09:11

Olá pessoal!

Gostaria de saber, como se adicionar código C enquanto crio um sistema operacional?

Afinal, como o processador vai ler o código C?

Em qual extensão eu gravo o C? .Bin?



Todo a parte de boot foi feita em Assembly, e o kernel também...
Mas para a interface gráfica eu gostaria de adicionar umas coisas em C...

Mas como adicionar códigos C em compilador Assembly? Tenho que juntar este código ao kernel...

#2 nvivo

nvivo
  • Visitantes

Posted 14/08/2009, 11:45

O processador não entende C, entende código de máquina. Da mesma forma que você traduz assembly pra código de máquina, o compilador de C faz a mesma coisa. E no nível do kernel, não importa muito a extensão. Você vai carregar um conteúdo binário na memória e começar a executar a partir de uma certa posição.

O que não ficou muito claro é como diabos você está criando um sistema operacional sem entender bulhufas sobre compiladores, linkers, linguagens e etc...

De qualquer forma, dê uma olhada no fonte do linux disponível gratuitamente em www.kernel.org, tudo começa no /arch/x86/boot (ou na arquitetura de sua escolha). Provavelmente vai te dar algumas idéias. =)

[]'s

#3 William Monteiro

William Monteiro

    São tantas as emoções..

  • Usuários
  • 453 posts
  • Sexo:Masculino

Posted 14/08/2009, 14:03

vc pode fazer na linguagem que você quiser..... mais eu não entendi muito bem o que você está fazendo. Voce ta programando em assembly pra usar em quais processadores? não familia 8051 neh?

como o nvivo disse o importante pra voce vai ser o compilador ele vai traduzir para o codigo de maquina que o processador ira entender, igual e feito em assembly.. o processador não sabe o o que mov hehehehe o compilador transforma isso tudo em binario e ai o bichinho lah entende kkk

boa sorte e mantenha a gnte informado sobre esse seu projeto!

#4 Arthur XD

Arthur XD

    Turista

  • Usuários
  • 28 posts
  • Sexo:Não informado

Posted 14/08/2009, 15:51

O que não ficou muito claro é como diabos você está criando um sistema operacional sem entender bulhufas sobre compiladores, linkers, linguagens e etc...


Na realidade eu entendo um pouco...
Mas eu conto com ajuda de várias pessoas ajudando =] rsrsrs

Voce ta programando em assembly pra usar em quais processadores? não familia 8051 neh?

8086... XD


...

Obrigado pessoal, pela ajuda...

Edição feita por: Arthur XD, 14/08/2009, 15:52.


#5 William Monteiro

William Monteiro

    São tantas as emoções..

  • Usuários
  • 453 posts
  • Sexo:Masculino

Posted 17/08/2009, 12:22

Ah entendi... o 8086 e quase que da mesma familia, tem 16 bits e usando 2 registradores chega a da 1 MB de memoria em cache....

mais eu so não entendi uma coisa, você deve estar utilizando este processador com ligação em provavelmente um LCD de 2 ou 4 linhas no maximos, o que vc quer fazer com interface grafica nele? Esse microprocessador até onde sei não ira lhe dar esta opção, caso queira montar desenhos alguma coisa ssim no lcd tera que usar ASCII mesmo pra fazer as imagens.. tendeu?




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq