Re: Escrever um driver

2003-02-11 Por tôpico Anderson da Silva araújo
H, mas pra que gravador de eprom? As placas mães de uns tempos 
para cá não tem um gravador da bios embutido? Eu de vez em quando 
faço o update da bios do meu computador, creio que não seria muito 
dificil carregar  esse linux-bios não, mas posso estar enganado :).

Sds,

Anderson


-Original Message-
From: Frederico R. Marvila [EMAIL PROTECTED]
To: deb-user-pt debian-user-portuguese@lists.debian.org
Date: Mon, 10 Feb 2003 18:36:50 -0300 (ART)
Subject: Re: Escrever um driver

  --- Anderson da Silva araújo [EMAIL PROTECTED]
 escreveu:  Sobre o boot, mais rapido li uma vez um
 esquema de
  colocar o linux na 
  bios da placa, com isso o boot, se dá em 4 ou  5
  segundos senão me 
  engano, dá uma catada no google sobre isto que deve
  achar mais sobre 
  isto.
 
 Quando fomos começar o trabalho, nos foi indicado que
 fossemos no site do Linux-BIOS (justamente sobre
 colocar o linux na BIOS do PC). O problema é que não
 temos grana pra comprar uma flash BIOS e nem é esse o
 objetivo ;) O objetivo é fazer o boot do linux começar
 mais rápido só mudando o kernel. E infelizmente não
 achei muita documentação sobre o assunto.
 
 O maior problema é a data de entrega: 27/02/2003...
 Vamos ter de passar MUITAS noites em claro ainda
 hehehe
 
 De qualquer forma, obrigado!
 
  
  Até mais,
  
  Anderson
 
 =
 Frederico Ramirez Marvila
 Ciência da Computação - UFMG
 e-SPEED - UFMG
 
 Friends shouldn't help friends run Windows. - Joe Barr
 ___
 Email certified Windows free by Debian Linux.
 
 ___
 
 Busca Yahoo!
 O melhor lugar para encontrar tudo o que você procura na Internet
 http://br.busca.yahoo.com/
 
 
 -- 
 To UNSUBSCRIBE, email to
 [EMAIL PROTECTED]
 with a subject of unsubscribe. Trouble? Contact
 [EMAIL PROTECTED]
 




Re: Escrever um driver

2003-02-11 Por tôpico Frederico R. Marvila
 --- Rodrigo F. Baroni [EMAIL PROTECTED]
escreveu:  
 Ola' caro Fred,

Olá!
  
 [ 8 ]
  Vai fundo, e depois mande um link para o
 trabalho
 ;)

Se tudo correr bem, mando sim ;) Mas não são muitas as
chances de dar certo, já que falta pouco tempo e
estamos abarrotados de provas e trabalhos de outras
matérias.

Mas com força de vontade e muito
café-guaraná-coca-cola, talvez consigamos terminar
heheh

Obrigado pelas dicas!

 
  Um abraco!
  
   Rodrigo F Baroni
Computer Science Bach's Student
Sao Paulo, Brazil

=
Frederico Ramirez Marvila
Ciência da Computação - UFMG
e-SPEED - UFMG

Friends shouldn't help friends run Windows. - Joe Barr
___
Email certified Windows free by Debian Linux.

___
Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! 
encontra.
http://br.busca.yahoo.com/



Re: Escrever um driver

2003-02-10 Por tôpico Anderson da Silva araújo
Sobre o boot, mais rapido li uma vez um esquema de colocar o linux na 
bios da placa, com isso o boot, se dá em 4 ou  5 segundos senão me 
engano, dá uma catada no google sobre isto que deve achar mais sobre 
isto.

Até mais,

Anderson



-Original Message-
From: Frederico R. Marvila [EMAIL PROTECTED]
To: deb-user-pt debian-user-portuguese@lists.debian.org
Date: Sun, 9 Feb 2003 20:34:25 -0300 (ART)
Subject: Re: Escrever um driver

  --- Rodrigo F. Baroni [EMAIL PROTECTED]
 escreveu:  Ola' caro Wanderson, 
  
  
  --- wanderson [EMAIL PROTECTED] escreveu: 
  Alo aos programadores (ou engenheiros de soft, sei
   lá :)
   
   Alguém poderia me dizer (ainda que por alto) o que
   se leva em conta ao 
   escrever um driver? Ou seja, o que alguém precisa
   saber para escrever um 
   driver para GNU/Linux? Isso se aprende na
  faculdade
   ou dá pra aprender 
   na marra?. Esse cara precisaria de quais
   informações?
 
 Aqui vem um detalhe: vc não aprende quase nada na
 faculdade (claro que o que aprende é suficiente para
 aprender o resto sozinho. Eu gosto disso ;)
 
 Aprender computação é como aprender música. Uma vez
 aprendido os conceitos, aprender uma linguagem,
 aprender a programar kernel ou o que for é como alguém
 que aprende música e está trocando de instrumento. É
 só se adaptar.
 
 As informações foram dadas pelo Baroni ;)
 
 Só aproveitando a discussão sobre o kernel, eu e 3
 colegas estamos penando para conseguir fazer um kernel
 que dá boot mais rápido. Nós precisamos de informações
 de como o kernel inicia (desde vc ligar a máquina) e
 como é o esquema de memória dele (ex: como acessar
 memória diretamente, como as estruturas são e onde
 estão, etc.). Infelizmente foram poucos os lugares em
 que encontramos as informações e, a maior parte do
 kernel, não é comentada...
 
 Se alguém souber de algum lugar pra procurar, por
 favor me falem ;) Ah, ia esquecendo, esse é um
 trabalho da matéria sistemas operacionais.
 
 P.S.: desculpe, Baroni pela msg enviada a vc... era
 para ter ido para a lista toda...
 
 Até,
 
 =
 Frederico Ramirez Marvila
 Ciência da Computação - UFMG
 e-SPEED - UFMG
 
 Friends shouldn't help friends run Windows. - Joe Barr
 ___
 Email certified Windows free by Debian Linux.
 
 ___
 
 Busca Yahoo!
 O melhor lugar para encontrar tudo o que você procura na Internet
 http://br.busca.yahoo.com/
 
 
 -- 
 To UNSUBSCRIBE, email to
 [EMAIL PROTECTED]
 with a subject of unsubscribe. Trouble? Contact
 [EMAIL PROTECTED]
 




Re: Escrever um driver

2003-02-10 Por tôpico Gustavo Pichorim Boiko

 
 Alguém poderia me dizer (ainda que por alto) o que se leva em conta ao 
 escrever um driver? Ou seja, o que alguém precisa saber para escrever um 
 driver para GNU/Linux? Isso se aprende na faculdade ou dá pra aprender 
 na marra?. Esse cara precisaria de quais informações?


Um bom guia é o livro Linux Device Drivers (que pode ser lido online no site da 
O'Reilly)

http://safari.oreilly.com/?XmlId=0-59600-008-1

[]'s

Gustavo

Re: Escrever um driver

2003-02-10 Por tôpico Frederico R. Marvila
 --- Anderson da Silva araújo [EMAIL PROTECTED]
escreveu:  Sobre o boot, mais rapido li uma vez um
esquema de
 colocar o linux na 
 bios da placa, com isso o boot, se dá em 4 ou  5
 segundos senão me 
 engano, dá uma catada no google sobre isto que deve
 achar mais sobre 
 isto.

Quando fomos começar o trabalho, nos foi indicado que
fossemos no site do Linux-BIOS (justamente sobre
colocar o linux na BIOS do PC). O problema é que não
temos grana pra comprar uma flash BIOS e nem é esse o
objetivo ;) O objetivo é fazer o boot do linux começar
mais rápido só mudando o kernel. E infelizmente não
achei muita documentação sobre o assunto.

O maior problema é a data de entrega: 27/02/2003...
Vamos ter de passar MUITAS noites em claro ainda
hehehe

De qualquer forma, obrigado!

 
 Até mais,
 
 Anderson

=
Frederico Ramirez Marvila
Ciência da Computação - UFMG
e-SPEED - UFMG

Friends shouldn't help friends run Windows. - Joe Barr
___
Email certified Windows free by Debian Linux.

___
Busca Yahoo!
O melhor lugar para encontrar tudo o que você procura na Internet
http://br.busca.yahoo.com/



Re: Escrever um driver

2003-02-10 Por tôpico Rodrigo F. Baroni
Ola' caro Fred,
 
--- Frederico R. Marvila [EMAIL PROTECTED]
escreveu:   

CUT
 
 Só aproveitando a discussão sobre o kernel, eu e 3
 colegas estamos penando para conseguir fazer um
 kernel
 que dá boot mais rápido. Nós precisamos de
 informações
 de como o kernel inicia (desde vc ligar a máquina) e
 como é o esquema de memória dele (ex: como acessar
 memória diretamente, como as estruturas são e onde
 estão, etc.). Infelizmente foram poucos os lugares
 em
 que encontramos as informações e, a maior parte do
 kernel, não é comentada...
 
 Se alguém souber de algum lugar pra procurar, por
 favor me falem ;) Ah, ia esquecendo, esse é um
 trabalho da matéria sistemas operacionais.
 

  A inicializacao do linux inicia-se pelos
arquivos /usr/src/linux/arch/i386/kernel/{head.S
setup.S}. Embora sejam uns dos mais dificeis arquivos,
sugiro uma 'leitura' neles, pois sao eles os
responsaveis pelo carregamento do kernel do
dispositivo onde estao (hd, floppy,..) para a memoria,
descompacta'-lo, setar os diretorios de paginas e
tabelas de paginas da memoria virtual, definir os
segmentos base que separam o espaco do usuario do
espaco do kernel, e inicializar a execucao do kernel.
Estao escritos em assembly.

  Uma fonte para o entendimento do gerenciamento
de memoria de uma arquitetura IBM-PC, eh o volume 3
dos livros de documentacao da INTEL, o System
Programming Guide, encontrado no site da intel, em
http://developer.intel.com/design/pentium4/manuals/245472.htm

.. Eh um excelente livro gratuito para
desenvolvedores de kernels, estudantes de
ciencias/engenharias, e hackers; notei que
***muitas*** ilustracoes dele e comenta'rios sao
utilizados em livros cla'ssicos dd computacao, de
autorias de A. Tanenbaum, Silbershwatz ...Utilizei-o
para alguns trabalhos tambe'm :) (de arquitetura de
computadores, semestre passado :) ).

 Acho muito legal saber o que acontece la'
embaixo, e o kernel eh uma fonte aberta de algoritmos
beli'ssimos. 

  
 Vai fundo, e depois mande um link para o trabalho
;)

 Um abraco!


  Rodrigo F Baroni
   Computer Science Bach's Student
   Sao Paulo, Brazil



 
 =
 Frederico Ramirez Marvila
 Ciência da Computação - UFMG
 e-SPEED - UFMG
 
 Friends shouldn't help friends run Windows. - Joe
 Barr



___
Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! 
encontra.
http://br.busca.yahoo.com/



Re: Escrever um driver

2003-02-09 Por tôpico José Antonio Boyd Cardoso
Câmbio Wanderson !

Não é a minha praia, mas pelo que já li e ouvi, existe um clássico
sobre o assunto, é o Linux Device Drivers  escrito pelo Alessandro
Rubini e publicado pela editora O'Reilly.

Nesta reportagem em:

http://www.revistadolinux.com.br/ed/022/assinantes/leitura.php3

Eles anunciam a segunda edição, fazem alguns comentários e dizem que a
O'Reilly disponibilizou a 1a edição on-line. Esta primeira edição já
estaria desatualizada mas não custa dar uma olhadinha ;-)

http://safari.oreilly.com/?XmlId=1-56592-292-1

Como disse o colega Leandro, é bom conhecer C e Assembly...

Espero ter ajudado,

[]'s,

-- 
../)._/.Jose Antonio Boyd Cardoso
./_)()\/(/..E-mail: [EMAIL PROTECTED]
../.Registred Linux user number # 137975


Em Sat, 08 Feb 2003 23:14:17 -0200
wanderson [EMAIL PROTECTED] escreveu:

 Alo aos programadores (ou engenheiros de soft, sei lá :)
 
 Alguém poderia me dizer (ainda que por alto) o que se leva em conta ao
 escrever um driver? Ou seja, o que alguém precisa saber para escrever
 um driver para GNU/Linux? Isso se aprende na faculdade ou dá pra
 aprender na marra?. Esse cara precisaria de quais informações?
 (Não seria legal se TUDO funcionasse under linux? :-).
 
 Wanderson
 
 God saves Dennis Ritchie and Brian Kerninghan.



Re: Escrever um driver

2003-02-09 Por tôpico José Antonio Boyd Cardoso
Câmbio de novo !

Corrigindo e complementando a minha informação anterior, até mesmo a
segunda edição está liberada on-line:

http://safari.oreilly.com/?XmlId=0-59600-008-1

[]'s,

-- 
../)._/.Jose Antonio Boyd Cardoso
./_)()\/(/..E-mail: [EMAIL PROTECTED]
../.Registred Linux user number # 137975


Em Sun, 9 Feb 2003 09:19:33 -0200
José Antonio Boyd Cardoso [EMAIL PROTECTED] escreveu:

 Câmbio Wanderson !
 
 Não é a minha praia, mas pelo que já li e ouvi, existe um clássico
 sobre o assunto, é o Linux Device Drivers  escrito pelo Alessandro
 Rubini e publicado pela editora O'Reilly.
 
 Nesta reportagem em:
 
 http://www.revistadolinux.com.br/ed/022/assinantes/leitura.php3
 
 Eles anunciam a segunda edição, fazem alguns comentários e dizem que a
 O'Reilly disponibilizou a 1a edição on-line. Esta primeira edição já
 estaria desatualizada mas não custa dar uma olhadinha ;-)
 
 http://safari.oreilly.com/?XmlId=1-56592-292-1
 
 Como disse o colega Leandro, é bom conhecer C e Assembly...
 



Re: Escrever um driver

2003-02-09 Por tôpico Rodrigo F. Baroni
Ola' caro Wanderson, 


--- wanderson [EMAIL PROTECTED] escreveu: 
Alo aos programadores (ou engenheiros de soft, sei
 lá :)
 
 Alguém poderia me dizer (ainda que por alto) o que
 se leva em conta ao 
 escrever um driver? Ou seja, o que alguém precisa
 saber para escrever um 
 driver para GNU/Linux? Isso se aprende na faculdade
 ou dá pra aprender 
 na marra?. Esse cara precisaria de quais
 informações?

No linux/unixes, os drivers sao chamados de
mo'dulos. Os mo'dulos sao co'digos objetos que
inseridos no espaco do kernel oferecem controle `a um
harwdware.

   No linux, modulos sao escritos em C . Nao eh
necessario utilizar o assembly; ha' muitas funcoes e
recursos do codigo do kernel que sao  necessarios e
utilizados para escrever os modulos - dai' que 90% eh
tudo escrito em C, trabalhando **muito** com o codigo
do kernel. Para tal entao, eh necessa'rio uma
familiarizacao e dominio da linguagem C e um estudo de
algumas partes do kernel do linux (eh necessario lidar
com algumas structs do kernel para escrever um
modulo, como struct file , struct file operations
ioctl.h ,)

   A funcao de um modulo eh ler e escrever em portas
de I/O, emitir comandos para o hardware, controlar o
fluxo de dados entre o kernel e o espaco do usuario, e
algumas outras coisas que envolvem te'cnicas de
programacao como lidar com condicoes de disputa (race
conditions), variaveis atomicas, codigos reentrantes
(..). 

   Tal conhecimento vc pode obter buscando por fontes
do kernel, lendo documentacoes sobre o assunto (o bom
do linux eh que ha' **muita** documentacao), e ter
forca de vontade para ficar buscando correspondencias
no kernel do linux e tendo paciencia e vontade de um
programador (leia-se noites varadas em busca de uma
compilacao sem erros :) e tudo rodando como esperado
).


Ha' um livro muito bom sobre o assunto :
Linux Device Drivers  (Alessandro Rubini, ed.
Oreilly), que recomendo fortemente aos interessados
em compra'-lo. Ha' uma versao eletronica em
http://www.xml.com/ldd/chapter/book/index.html (2nda
edicao).

   Sou um fissurado por kernel e drivers, essa eh
minha praia na computacao :) .


 (Não seria legal se TUDO funcionasse under linux?
 :-).

Seria excelente.

 
 Wanderson
 
 God saves Dennis Ritchie and Brian Kerninghan.

   Essa foi boa :) , concordo que devemos muito `a
esses caras .. participaram da construcao do MULTICS,
criaram o UNIX, reescreveram o unix 2 vezes em
assembly, criaram o C, 




  Rodrigo F Baroni

Computer Science Bach's Student.
[EMAIL PROTECTED]
[EMAIL PROTECTED]


___
Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! 
encontra.
http://br.busca.yahoo.com/



Re: Escrever um driver

2003-02-09 Por tôpico Alan



me interessei no #kernelnewbies, qual 'e o server?
[]s
Alan Costa


 Alguém poderia me dizer (ainda que por alto) o que se leva em conta ao
 escrever um driver? Ou seja, o que alguém precisa saber para escrever um
 driver para GNU/Linux? Isso se aprende na faculdade ou dá pra aprender
 na marra?. Esse cara precisaria de quais informações?


Dá pra aprender na marra. Basicamente, o cara tem que conhecer C. Não
precisa
manjar de assembly, embora isso ajude bastante. Tem que conhecer a fundo a
arquitetura para qual está escrevendo o driver.

Tem que ter o máximo de informações possíveis sobre a coisa. As vezes isso
não
é possível e é aí que entra os conhecimentos em assembly: vai ter que, por
exemplo, entrar no Windows e fazer uma engenharia reversa no driver. Nada
trivial, dá um [EMAIL PROTECTED]@#$ trabalho... dificilmente a coisa vai 
funcionar de
primeira. Tem que ter muita paciência.

Quando se tem o código do driver para outra plataforma é claro que o
trabalho
de fazer o driver é bem menor. Ah sim, as vezes é possível escrever um novo
driver usando um parecido como base...

Nunca escrevi um, já que kernel não é minha área... só sei que existem
canais
de IRC e páginas dedicadas a quem quer se aventurar nisso. Na FreeNode
(antiga
openprojects), tem o #kernelnewbies; eles tem uma página bem legal, com
alguns
tutoriais e códigos-exemplo. E, claro, gente disposta a ajudar...

--
 Leandro Pereira  (oO)   [EMAIL PROTECTED]
 www.mindcrisis.tk/||\ GPG key: 0x062E7976

 Estao sorrindo de que? Estao sorrindo de quem? Eu nao estou sorrindo!
Meu nome e' Eneas, 56! -- Eneas Carneiro


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact
[EMAIL PROTECTED]

___
Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! 
encontra.
http://br.busca.yahoo.com/



Re: Escrever um driver

2003-02-09 Por tôpico Frederico R. Marvila
 --- Rodrigo F. Baroni [EMAIL PROTECTED]
escreveu:  Ola' caro Wanderson, 
 
 
 --- wanderson [EMAIL PROTECTED] escreveu: 
 Alo aos programadores (ou engenheiros de soft, sei
  lá :)
  
  Alguém poderia me dizer (ainda que por alto) o que
  se leva em conta ao 
  escrever um driver? Ou seja, o que alguém precisa
  saber para escrever um 
  driver para GNU/Linux? Isso se aprende na
 faculdade
  ou dá pra aprender 
  na marra?. Esse cara precisaria de quais
  informações?

Aqui vem um detalhe: vc não aprende quase nada na
faculdade (claro que o que aprende é suficiente para
aprender o resto sozinho. Eu gosto disso ;)

Aprender computação é como aprender música. Uma vez
aprendido os conceitos, aprender uma linguagem,
aprender a programar kernel ou o que for é como alguém
que aprende música e está trocando de instrumento. É
só se adaptar.

As informações foram dadas pelo Baroni ;)

Só aproveitando a discussão sobre o kernel, eu e 3
colegas estamos penando para conseguir fazer um kernel
que dá boot mais rápido. Nós precisamos de informações
de como o kernel inicia (desde vc ligar a máquina) e
como é o esquema de memória dele (ex: como acessar
memória diretamente, como as estruturas são e onde
estão, etc.). Infelizmente foram poucos os lugares em
que encontramos as informações e, a maior parte do
kernel, não é comentada...

Se alguém souber de algum lugar pra procurar, por
favor me falem ;) Ah, ia esquecendo, esse é um
trabalho da matéria sistemas operacionais.

P.S.: desculpe, Baroni pela msg enviada a vc... era
para ter ido para a lista toda...

Até,

=
Frederico Ramirez Marvila
Ciência da Computação - UFMG
e-SPEED - UFMG

Friends shouldn't help friends run Windows. - Joe Barr
___
Email certified Windows free by Debian Linux.

___
Busca Yahoo!
O melhor lugar para encontrar tudo o que você procura na Internet
http://br.busca.yahoo.com/



Escrever um driver

2003-02-08 Por tôpico wanderson

Alo aos programadores (ou engenheiros de soft, sei lá :)

Alguém poderia me dizer (ainda que por alto) o que se leva em conta ao 
escrever um driver? Ou seja, o que alguém precisa saber para escrever um 
driver para GNU/Linux? Isso se aprende na faculdade ou dá pra aprender 
na marra?. Esse cara precisaria de quais informações?

(Não seria legal se TUDO funcionasse under linux? :-).

Wanderson

God saves Dennis Ritchie and Brian Kerninghan.




Re: Escrever um driver

2003-02-08 Por tôpico Leandro A. F. Pereira
Quoted by a barrel of crazed hamsters
For `wanderson [EMAIL PROTECTED]' 
On Saturday, 08 February 2003 (23:14):

 
 Alguém poderia me dizer (ainda que por alto) o que se leva em conta ao 
 escrever um driver? Ou seja, o que alguém precisa saber para escrever um 
 driver para GNU/Linux? Isso se aprende na faculdade ou dá pra aprender 
 na marra?. Esse cara precisaria de quais informações?


Dá pra aprender na marra. Basicamente, o cara tem que conhecer C. Não 
precisa
manjar de assembly, embora isso ajude bastante. Tem que conhecer a fundo a
arquitetura para qual está escrevendo o driver.

Tem que ter o máximo de informações possíveis sobre a coisa. As vezes 
isso não
é possível e é aí que entra os conhecimentos em assembly: vai ter que, por
exemplo, entrar no Windows e fazer uma engenharia reversa no driver. Nada
trivial, dá um [EMAIL PROTECTED]@#$ trabalho... dificilmente a coisa vai 
funcionar de
primeira. Tem que ter muita paciência.

Quando se tem o código do driver para outra plataforma é claro que o 
trabalho
de fazer o driver é bem menor. Ah sim, as vezes é possível escrever um novo
driver usando um parecido como base...

Nunca escrevi um, já que kernel não é minha área... só sei que existem 
canais
de IRC e páginas dedicadas a quem quer se aventurar nisso. Na FreeNode (antiga
openprojects), tem o #kernelnewbies; eles tem uma página bem legal, com alguns
tutoriais e códigos-exemplo. E, claro, gente disposta a ajudar...

-- 
 Leandro Pereira  (oO)   [EMAIL PROTECTED]
 www.mindcrisis.tk/||\ GPG key: 0x062E7976

 Estao sorrindo de que? Estao sorrindo de quem? Eu nao estou sorrindo!
Meu nome e' Eneas, 56! -- Eneas Carneiro