Programmation de drivers sous linux
Résolu
grbm
Messages postés
2
Statut
Membre
-
grbm Messages postés 2 Statut Membre -
grbm Messages postés 2 Statut Membre -
Bonjour,
je m'intéresse à la programmation système sous linux, plus précisement à la programmation de driver. Voici la structure mnimale d'un module
que j'ai vu dans un club de developpeur:
#include <linux/module.h>
int init_module(void)
{
printk("<1>Hello, world\n");
return 0;
}
void cleanup_module(void)
{
printk("<1>Goodbye cruel world\n");
}
je lance la compilation avec la commande suivante: cc -O -DMODULE -D__KERNEL__ -c hello.c ,ceci me donne tout une nation d'erreur.
je remplace "#include <linux/module.h>" par la bibliothèque "#include <linux/init.h>", la compilation marche et j'obtient le fichier objet.
lorque j'essaie de le charger avec insmod Hello.o voila ce que ça me donne comme message "insmod:error inserting "hello.o":-1invalid module format.
lorsque j'utilise module.h et init.h les erreurs se multipluient , pourtant cela ne pas mauvais non plus car 'module.h ' nous fournit les bases pour le déchargement et le déchargement de module et 'init.h' pour l'initialisation
je m'intéresse à la programmation système sous linux, plus précisement à la programmation de driver. Voici la structure mnimale d'un module
que j'ai vu dans un club de developpeur:
#include <linux/module.h>
int init_module(void)
{
printk("<1>Hello, world\n");
return 0;
}
void cleanup_module(void)
{
printk("<1>Goodbye cruel world\n");
}
je lance la compilation avec la commande suivante: cc -O -DMODULE -D__KERNEL__ -c hello.c ,ceci me donne tout une nation d'erreur.
je remplace "#include <linux/module.h>" par la bibliothèque "#include <linux/init.h>", la compilation marche et j'obtient le fichier objet.
lorque j'essaie de le charger avec insmod Hello.o voila ce que ça me donne comme message "insmod:error inserting "hello.o":-1invalid module format.
lorsque j'utilise module.h et init.h les erreurs se multipluient , pourtant cela ne pas mauvais non plus car 'module.h ' nous fournit les bases pour le déchargement et le déchargement de module et 'init.h' pour l'initialisation
A voir également:
- Programmation de drivers sous linux
- Tous les drivers - Télécharger - Pilotes & Matériel
- Drivers cloud - Télécharger - Pilotes & Matériel
- Application de programmation - Guide
- Acer drivers - Télécharger - Pilotes & Matériel
- Linux reader - Télécharger - Stockage
3 réponses
Bonjour,
voici une piste : https://lwn.net/Kernel/LDD3/
c'est une version téléchargeable de linux device drivers ( 3nd edition) qui m'a permis l'apprentissage de la création de driver sous linux.
j'espère que ça vous aidera ( je vous suggère de lire le 2eme chapitre : Building and Running Modules, qui répondra sûrement à votre question).
Cordialement
:)
voici une piste : https://lwn.net/Kernel/LDD3/
c'est une version téléchargeable de linux device drivers ( 3nd edition) qui m'a permis l'apprentissage de la création de driver sous linux.
j'espère que ça vous aidera ( je vous suggère de lire le 2eme chapitre : Building and Running Modules, qui répondra sûrement à votre question).
Cordialement
:)
je bien recu votre reponse à mon problème et elle est satisfaisante.
Je veux avoir ton @ mai si cela ne te dérange pas afin de faire beaucoup plus connaissance.
Merci.