Pages : 1
#1 Le 24/09/2013, à 17:27
- G.I.Bdeking
Les modules linux
Je me posait quelques petites questions concernant les modules linux, car j'en code un et mes doutes me brûlent:
-- Peut-on utiliser toutes les fonctionnalités du C?
-- Utiliser des librairies?
"Le désir sincère d'aider est l'essence du logiciel libre. Trouvez y un poste où vous serez utiles, même si ce n'est que de répondre aux libristes sur des forum, et vous trouverez votre place dans ce nouveau monde."
Hors ligne
#2 Le 24/09/2013, à 17:48
- grim7reaper
Re : Les modules linux
Je me posait quelques petites questions concernant les modules linux, car j'en code un et mes doutes me brûlent:
-- Peut-on utiliser toutes les fonctionnalités du C?
-- Utiliser des librairies?
Je suppose que tu parles de modules kernel.
Non, pour les deux.
Le C en espace noyau c’est du C freestanding, par opposition au C que l’on fait sur Linux ou Windows (par exemple) appelé C hosted car on a un système d’exploitation en dessous.
Donc quand tu codes en C dans le kernel tu n’as pas de libc (la libc se base sur le noyau, donc le noyau ne peut pas se baser sur la libc ). Donc tu oublies les printf, les malloc & cie.
Et tu dis bonjour aux fonctions du kernel (printk, kmalloc, …).
De même, il vaut mieux éviter les nombres à virgule flottante.
Le C dans le kernel c’est un C avec une mentalité et des contraintes différentes du C habituel.
Dernière modification par grim7reaper (Le 24/09/2013, à 17:51)
Hors ligne
Pages : 1