Vous êtes sur la page 1sur 2

Systèmes d'Exploitation I - 1

ère année Li en e

TP1 : Noyau et modules


ESEN - Université de la Manouba
Amine DHRAIEF

Le noyau gère les fon tions élémentaires du système, omme la gestion de la mémoire
et des pro essus, l'a ès aux disques durs et aux artes réseau, et . Il est de plus modu-
laire : le noyau lan é à l'amorçage ne ontient que les fon tions né essaires au démarrage de
l'ordinateur. Lorsqu'une fon tion supplémentaire est requise (par exemple, pour du matériel
spé ial), le ode né essaire est lié au noyau en tant que module. Lorsque ette fon tion n'est
plus utilisée pendant quelque temps, le module peut être supprimé du noyau.

Commandes de gestion des modules


1. La ommande lsmod a he une liste de tous les modules intégrés dans le noyau au
moment où elle est exé utée. A hez tous les modules en tapant $lsmode| sort |
less.
2. Cher hez les modules responsables
(a) de la gestion du son en tapant $lsmode|grep snd.
(b) de la gestion de la video en tapant $lsmode|grep video.
( ) des périphériques USB.
(d) des périphériques réseaux wi (s'il y a une arte sur votre ma hine ma 802.11).
3. modinfo a he des informations sur un module. Celui- i ne doit pas né essairement se
trouver dans le noyau.
(a) A hez les données pour le module e1000, qui est un pilote pour les artes réseau
Intel Pro/1000, en tapant $modinfo e1000.
(b) A hez les données pour le module usbhid.
4. Pour e qui est du hargement et du dé hargement d'un module, il faut utiliser la om-
mande modprobe :
(a) A hez les informations sur le module 3 59x.
(b) Chargez le module 3 59x en tapant sudo modprobe -a 3 59x.
( ) Dé hargez le module 3 59x en tapant sudo modprobe -r 3 59x.
(d) A hez le manuel des ommandes insmod et rmmod en tapant $man insmod et $man
rmmod.
(e) Chargez et dé hargez le module 3 59x en utilisant les ommandes insmod et rmmod.
Module hello world
L'obje tif de ette se tion est d'é rire un module hello world pour le noyau LINUX.
5. Dans un  hier hello. opiez le ode sour e i-dessous

6. Que représente printk ? module_init() ? module_exit() ?


7. An de ompiler notre module, nous allons utilisé la ommande make. make est un logi iel
qui onstruit automatiquement des  hiers, souvent exé utables, ou des bibliothèques à
partir d'éléments de base tels que du ode sour e. Il utilise des  hiers appelés Makele
qui spé ient omment onstruire les  hiers ibles. À la diéren e d'un simple s ript
shell, make exé ute les ommandes seulement si elles sont né essaires. Le but est d'arriver
à un résultat (logi iel ompilé ou installé, do umentation réée, et .) sans né essairement
refaire toutes les étapes. make est parti ulièrement utilisé sur les plates-formes UNIX.
Nous allons utilisé le Makefile i-dessous pour ompiler notre ode sour e. É rivez dans
 hier Makele le ode i-dessous. Dans un Makele, les espa es sont obligatoirement
des tabulations.

8. Compilez votre module en utilisant la ommande $make


9. Chargez votre module en utilisant ette fois la ommande $sudo insmode hello.ko
10. A hez les messages de debug de votre noyau en utilisant la ommande $dmesg
11. Dé hargez votre module en utilisant ette fois la ommande $sudo rmmode hello.ko
12. A hez les messages de debug de votre noyau en utilisant la ommande $dmesg

Page 2

Vous aimerez peut-être aussi