[FUG-BR] acesso ao hardware (via gcc) - complementando
Marcelo Vilela
marcelo.freebsd em gmail.com
Seg Mar 27 13:23:18 BRT 2006
Olá,
O uso de __asm é igual para todas as plataformas, existem muitos sites que
falam a respeito, além da maioria de bons livros de C.
Quanto as int, o FreeBSD (como os outros UNIX) usa apenas a int 80 para
acesso ao sistema, tem alguma documentação no Architecture Handbook do
FreeBSD e algo no site http://www.int80h.org.
Abraços.
Em 27/03/06, Nilton Jose Rizzo <rizzo em i805.com.br> escreveu:
>
> On Mon, 27 Mar 2006 09:49:00 -0500, irado em hotpop.com wrote
> > bem, complementando:
> >
> > muitos séculos atrás eu cometi um pequeno programa em turbo-c o qual,
> > acessando o hardware (floppy) diretamente, fazia uma ´leitura´ das
> trilhas
> > 0 a 79, trilha a trilha. Bem, não havia leitura alguma, apenas o
> > deslocamento da cabeça por essas trilhas, sendo que o diskette era o
> > conhecido(?) dispositivo para limpeza de cabeças. Com isso, eu
> > evitava ficar digitando insaciávelmente ´dir´ (era dos, não esqueçam)
> > além de evitar o desgaste apenas da trilha 0 do diskette de limpeza.
>
> Irado,
>
> Da uma olhada em man -k device (device_get*, device_set*)
> veja se com isso voce consegue fazer o que precisa ser feito.
>
> Partindo do principio que o nosso sistema é multitarefa
> os acessos *devem* ser feitos através de API do kernel, *acho*
> (quase certeza absoluta) que não tem como fazer isso em userland
> direto e nem é preciso usar assembler, pos tbm não tem acesso
> direto aos dispositivos.
>
> Rizzo
> >
> > A idéia agora é (re)fazer o programa para funcionar em FreeBSD, mas
> > eu precisaria saber os int(errupts) correspondentes. Com certeza
> > deve haver um ´#include.h´ pra isso e, possívelmente, não seja
> > visível no fonte do kernel. Mas - seguramente - vou olhar o fonte
> > sim, mas só no fim de semana.
> >
> > Ah, em asm eu creio que é imraticável, pra mim pelo menos, que já
> > nem vejo isso desde.. hmmm.. ´79/80..
> >
> > se alguém tiver alguma idéia de onde procurar, a semântica empregada
> > (pragma, inline, int-xx, etc), já ajudará bastante :)
> >
> > obrigado.
> >
> > --------------------------------------------------------------------
> > mail2web - Check your email from the web at
> > http://mail2web.com/ .
> >
> > _______________________________________________
> > freebsd mailing list
> > freebsd em fug.com.br
> > http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
>
>
> --
> Nilton José Rizzo
> 805 Informatica
> 021 2413 9786
>
> _______________________________________________
> freebsd mailing list
> freebsd em fug.com.br
> http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
>
_______________________________________________
freebsd mailing list
freebsd em fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
Mais detalhes sobre a lista de discussão freebsd