Retourner aux forums || Retourner au forum Linux.noyau
Je suis en train de développer un driver pour le noyau 2.4. Afin de structurer mon code je veux le séparer sous la forme de différents modules C. Mais, je tiens à ce que les fonctions échangées entre ces modules ne soient pas visible par le noyaux (risque de conflit ...)
Quelle solution me conseillez vous (si elle existe ) pour me permettre d'avoir une visibilité de mes variables / fonction entre les différents modules de mon driver, mais pas à l'extérieur de ce dernier ?
> Lire le message (7 commentaires, moyenne: 1,7).
Prefixe ?
Prefixer toutes tes variables/fonctions de maniere a t'assurer l'absence de conflit
-
[^]Re: Prefixe ?
Posté par jeje99 (page perso, ) le 19/08/2005 à 15:28. (lien). Évalué à 1.qu'entends tu par préfixer, faire des noms de variable ou de fonction du type : mondriver_nomdemafonction ???
-
[^]Re: Prefixe ?
Posté par Pierre Maziere () le 19/08/2005 à 15:38. (lien). Évalué à 2.oui en utilisant 2 ou 3 lettres pour mondriver.
Deja tu declares en static tout ce qui ne sortira jamais de tes differents "modules .c" , ensuite tu prefixes le reste-
[^]Re: Prefixe ?
Posté par jeje99 (page perso, ) le 20/08/2005 à 10:08. (lien). Évalué à 1.Je trouve pas cette solution très propre mais à priori c'est la seule... Je vais peut être tout mettre dans le même fichier, je ne sais pas ce qui est le mieux.
-
-
Au fait ...
... simple curiosite:
-pourquoi un module pour le noyau 2.4 et pas pour le 2.6 ?
-quelle(s) fonctionalite(s) apporte ton module ?
-
[^]Re: Au fait ...
Posté par jeje99 (page perso, ) le 20/08/2005 à 10:07. (lien). Évalué à 1.En fait je suis en stage en ce moment, l'entreprise dans laquelle je suis, possède des vielles cartes entrées / sortie isa (fabriquer en interne) avec leur driver tournant sous dos. Il m'ont demandé de porter leur appli sous un os interne ça inclu de porter aussi leur drivers (l'os interne utilise une version personnalisé du noyaux 2.4).
J'ai trouvé !!!
Le plus propre que j'ai trouvé d'utiliser la macro dans le source de mon driver:
EXPORT_NO_SYMBOLS;
Ce qui permet de définir explicitement qu'il n'y a aucun symboles d'exportés par mon driver, Merci le bouquin "Linux device driver devellopement".
Revenir en haut de page || Retourner aux forums || Retourner au forum Linux.noyau



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.