Bon, Pinailleuse est de retour du pays des mechants profs de genetique :aie:
*
Citation:
La programmation du noyau diffère beaucoup de la programmation en espace utilisateur. Nous préciserons certaines choses quand nous les rencontrerons au cours de ce livre, mais il y a quelques notions fondamentales qui, bien que ne meritant pas une section particulière, doivent être mentionnées. Ainsi, quand vous creuserez dans le noyau, les notions suivantes doivent être gardées à l'esprit.
deviendrait :
Citation:
La programmation du noyau diffère beaucoup de la programmation en espace utilisateur. Nous préciserons les notions nécessaires lorsque nous les rencontrerons au cours de ce livre.
Néanmoins, il y a quelques points fondamentaux qui ne méritent pas une section particulière, mais doivent être mentionnés. Ainsi, vous les garderez à l'esprit quand vous creuserez dans le noyau.
*
Citation:
(...); elle peut-être aussi petit qu'une unique page de 4096 octets.
Et sans les fautes de frappe :
Citation:
(...); elle peut être aussi petite qu'une unique page de 4096 octets.
*
Citation:
"Si vous appelez cette fonction, soyez sûr de savoir ce que vous faîtes."
Grrrr, vous vous plaignez apres qu'il n'y a pas beaucoup de filles en info :mouarf: Vous les ignorez...
Citation:
"Si vous appelez cette fonction, soyez sûr(e) de savoir ce que vous faites."
* Dans la section IV-4-1, enlever le titre anglais :
Citation:
Compiler des modules Compiling Modules
->
Citation:
Compiler des modules
*
Citation:
Comme première étape, nous avons besoin de regarder un peu la manière dont les modules sont compilés. Le processus de compilation pour des modules diffère de manière significative de celui utilisé pour des applications en espace utilisateur; le noyau est un vaste programme autonome avec des conditions détaillées et explicites sur la manière dont les pièces sont assemblées. Le processus de compilation diffère aussi de la manière dont les choses étaient faites dans les versions précédentes du noyau. Le nouveau système de compilation est plus simple à utiliser et produit plus de résultats corrects mais il a l'air très différent de ce qui existait auparavant. Le système de compilation du noyau est une bête complexe et nous en avons juste regardé une toute petite pièce. Les fichiers trouvés dans le répertoire Documentation/kbuild dans le code source du noyau nécessitent une lecture de quiconque souhaitant comprendre tout ce qui se passe sous la surface.
Avec quelques bebetes en moins :
Citation:
Comme première étape nous avons besoin de regarder un peu la manière dont les modules sont compilés. Le processus de compilation pour des modules diffère de manière significative de celui utilisé pour des applications en espace utilisateur. En effet, le noyau est un vaste programme autonome avec des conditions détaillées et explicites sur la manière dont les pièces sont assemblées. Le processus de compilation diffère aussi des versions précédentes du noyau. Le nouveau système de compilation est plus simple à utiliser et produit plus de résultats corrects mais il a l'air très différent de ce qui existait auparavant. Le système de compilation du noyau est une bête complexe et nous en avons juste regardé une toute petite partie. Les fichiers trouvés dans le répertoire Documentation/kbuild dans le code source du noyau nécessitent une lecture de quiconque souhaitant comprendre tout ce qui se passe sous la surface.
*
Citation:
Il est utile aussi (bien que pas indispensable) de faire tourner le noyau pour lequel vous compilez.
Ca conviendrait de mettre "dispensable" a la place de "pas indispensable"? :aie:
*
Citation:
Le module résultant est nommé hello.ko après avoir été compilé à partir fichier objet.
-> à partir du fichier
*
Citation:
Cette commande commence par changer de répertoire pour celui fourni grâce à l'option -C (c'est à dire votre répertoire contenant le code source du noyau). Il y trouve alors le fichier de compilation de plus haut-niveau du noyau. L'option M= force le fichier de compilation à revenir dans le répertoire du code source du module avant d'essayer de compiler les modules cibles. Cette cible, à son turn, fait référence à la liste des modules trouvés dans la variable obj-m, que nous avons affectée à module.o dans nos exemples.
Un peu de cosmetique :
Citation:
Cette commande commence par changer de répertoire pour celui fourni grâce à l'option -C (c'est-à-dire votre répertoire contenant le code source du noyau). Il y trouve alors le fichier de compilation de plus haut niveau du noyau. L'option M= force le fichier de compilation à revenir dans le répertoire du code source du module avant d'essayer de compiler les modules cibles. Cette cible, à son tour, fait référence à la liste des modules trouvés dans la variable obj-m, que nous avons affectée à module.o dans nos exemples.
*
Citation:
Taper la commande make vue ci-dessus peut être fatiguant au bout d'un certain.
-> au bout d'un certain temps :mouarf:
*
Citation:
nous avons été appelé
(dans les commentaires du code) -> nous avons été appelés
*
Citation:
Si vous n'êtes pas en train de faire tourner le noyau pour lequel vous compilez, vous pouvez fourni une option KERNELDIR= dans la ligne de commande, affecter la variable d'environnement KERNELDIR ou réécrire les lignes qui affectent la valeur à KERNELDIR dans le fichier de compilation. Une fois que l'arborescence du noyau a été trouvée, le fichier de compilation appelle la cible default: qui lance une seconde commande make (paramétrée dans le fichier de compilation par $(MAKE)) pour appeler le système de compilation du noyau comme décrit précédemment.
deviendrait :
Citation:
Si vous n'êtes pas en train de faire tourner le noyau pour lequel vous compilez, vous pouvez fournir une option KERNELDIR= dans la ligne de commande, affecter la variable d'environnement KERNELDIR ou réécrire les lignes qui affectent la valeur à KERNELDIR dans le fichier de compilation. Une fois l'arborescence du noyau trouvée, le fichier de compilation appelle la cible default: qui lance une seconde commande make (paramétrée dans le fichier de compilation par $(MAKE)) pour appeler le système de compilation du noyau comme décrit précédemment.
*
Citation:
Une fois que vous y êtes habitué, cependant, vous apprécierez fortement les possibilités qui ont été programmées dans le système de compilation du noyau. Notez que le fichier de compilation présenté ci-dessus n'est pas complet; un vrai fichier de compilation inclut les cibles habituelles pour nettoyer les fichiers non utilisés, installer les modules, etc. Voyez les fichiers de compilation dans le répertoire d'exemples des sources du noyau pour un exemple complet.
deviendrait :
Citation:
Cependant, une fois que vous y êtes habitué(e), vous apprécierez fortement les possibilités qui ont été programmées dans le système de compilation du noyau. Notez que le fichier de compilation présenté ci-dessus n'est pas complet : un vrai fichier de compilation inclut les cibles habituelles pour nettoyer les fichiers non utilisés, installer les modules, etc. Vous pouvez voir les fichiers de compilation dans le répertoire d'exemples des sources du noyau pour avoir une vision complète.
A bientot pour la suite :D