[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux-team] fonctions user-space se "remappant" sur des system-calls



dans include/asm/unistd.h 
pas include/unistd.h 

La liste de correspondance des appels systems user & kernel est donne par
le numero dans asm/unistd.h. Ce numero vient de la table des symboles du
noyau. 

La glibc, si je me souviens bien, pour le mapping user & kernel call
utilise le passage de parametre au syscall avec le numero venant de
asm/unistd.h. 

Le numero du syscall est place dans le registre %eax. Et lors de l'appel
il appel la function sys_ correcte. 

Ce fonctionnement est propre au 386 et cela doit fonctionner autrement sur
d'autre architecture. 

Hope this helps.

alx



----
Alexandre Dulaunoy
AD993-RIPE
AJDD1-6BONE
http://www.foo.be/


On Sun, 11 Feb 2001, Raffaele Brancaleoni wrote:

> Salut,
> 
> Quelqu'un saurait-il par quel miracle de la compilation, les appels du
> style "write(fd, buffer, sizeof(buffer))"
> sont remappés proprement sur l'implémentation du system-call du kernel
> (en l'occurence sys_write ) ?
> 
> Si on va voir dans /usr/include/unistd.h, write est déclarée comme
> fonction externe. unistd.h étant installé
> par la glibc, je suis allé voir dans les sources de glibc pour voir la
> définition de write ... et là, pas moyen de la trouver.
> 
> => la question: comment les appels à "write" sont-ils remappés sur
> l'implémentation du system call "sys_write" ?
> 
> a+
> 
> Raff.
> 
> --
> ____________________________________________________________________________
> Raffaele Brancaleoni                       Email : s940195@student.ulg.ac.be
> Licence en Informatique
> Université de Liège - Belgique
> ____________________________________________________________________________
> 
> 
> 
> 
> [ linux-team@rtfm.be and linux@lists.linuxbe.org in ONE :)         ]
> [ To subscribe or unsubscribe, go to http://linuxbe.org/ml.php     ]
> [ http://LinuxBe.org - http://OpenBe.net - listmaster@linuxbe.org  ]
> 


[ linux-team@rtfm.be and linux@lists.linuxbe.org in ONE :)         ]
[ To subscribe or unsubscribe, go to http://linuxbe.org/ml.php     ]
[ http://LinuxBe.org - http://OpenBe.net - listmaster@linuxbe.org  ]