Ajout notes ppt OS manquant
This commit is contained in:
parent
c730afaea6
commit
cbc27fc1aa
|
@ -117,7 +117,7 @@ L'exclusif intervient quand on veut faire une modif en écriture sur une ressour
|
||||||
|
|
||||||
C'est au niveau du commit que tout se gère : opti/pessi encadre le commit
|
C'est au niveau du commit que tout se gère : opti/pessi encadre le commit
|
||||||
|
|
||||||
### Structures mémoire
|
## Structures mémoire
|
||||||
|
|
||||||
### Sommaire
|
### Sommaire
|
||||||
|
|
||||||
|
@ -884,30 +884,91 @@ Information sur un module -> modinfo
|
||||||
|
|
||||||
## Gestion des péripériques
|
## Gestion des péripériques
|
||||||
|
|
||||||
Intro : udev gestionnaire de périph du kernel linux depuis 2.6
|
### Introduction
|
||||||
|
|
||||||
Concepts:
|
Udev est un gestionnaire de périphériques remplaçant devfs dans le noyau Linux depuis la version 2.6.
|
||||||
|
Sa fonction principale est gérer les périphériques dans le répertoire /dev.
|
||||||
|
En général une règle s’écrit en quelques lignes dans un fichiers .rules qui se trouve dans /etc/udev/rules.d
|
||||||
|
|
||||||
- /dev contient les périphériques sous forme de fichier
|
### Concepts
|
||||||
- udev nouveau système qui permet de les gérer là
|
|
||||||
-
|
|
||||||
|
|
||||||
Règles :
|
- /dev : sert à contenir les périphériques sous forme de fichier, les “nodes”, qui se rapportent aux périphériques système.
|
||||||
|
- Nodes: Chaque “node” se réfère à un périphérique, les applications peuvent utiliser ces nodes pour interagir avec les périphérique.
|
||||||
|
- Udev: est le nouveau système pour gérer le répertoire /dev, conçu pour repousser les limites mises en avant pas les précédentes versions de /dev
|
||||||
|
- Sysfs: officialisé avec le noyaux 2.6. Il est géré par le noyau pour exporter les informations basiques sur les périphériques connectés au système. Udev utilise ces informations pour créer les “nodes”.
|
||||||
|
|
||||||
elles permettent de
|
### Les règles Udev
|
||||||
|
|
||||||
- changer nom périph
|
Les règles udev sont flexibles et très puissantes:
|
||||||
- plein d’autres sur pdf
|
|
||||||
|
|
||||||
fichiers dans /etc/udev/rules.d
|
- changer le nom assigné par défaut à un périphérique;
|
||||||
|
- donner un nom alternatif ou permanent à un périphérique en créant un lien symbolique;
|
||||||
|
- nommer un périphérique en fonction de la sortie d'un programme;
|
||||||
|
- changer les permissions et les propriétés d'un périphérique;
|
||||||
|
|
||||||
. on peut avoir plein de fichiers d'extension .rules
|
### Fichiers de règles et syntaxes
|
||||||
|
|
||||||
un périphérique peut être contrôlé par plusieurs règles
|
- Udev se sert de différent fichiers qui se trouvent dans le répertoire /etc/udev/rules.d
|
||||||
|
Extension .rules
|
||||||
|
|
||||||
Sysfs quand Gaul le dit in dirait qu'il dit "si ses fesses". Exemple : "si, ses fesses on peut faire plein de choses avec".
|
- Les règles udev sont par défaut crées dans le fichier /lib/udev/rules.d/50-udev-default.rules
|
||||||
|
Trié par ordre alphabétique, et ordres de prise en compte /etc/udev/rules.d/10-local.rules
|
||||||
|
|
||||||
Il est par exemple possible grâce aux règles udev de faire un script qui se déclenche en fonction du numéro de s"ri d'un périph branché. Mais ça marche pas toujours.
|
- Pour info udev, essaie d’appliquer toutes les règles qu’il trouve,
|
||||||
|
|
||||||
|
"#": commentaire et les règles s’écrivent sur une seule ligne. Enfin un périphérique peut-être contrôlé par plusieurs règles
|
||||||
|
|
||||||
|
### Syntaxe d'une règle
|
||||||
|
|
||||||
|
On retrouve un ensemble de clefs de correspondances et de clefs d'assignation, séparées par des virgules.
|
||||||
|
|
||||||
|
- Les clefs de correspondances sont les conditions utilisées pour identifier le périphérique sur lequel la règle agit.
|
||||||
|
- Chaque règle doit se composer d'au moins une clef de correspondance et d'une clef d'assignation.
|
||||||
|
|
||||||
|
KERNEL=="hdb", NAME="my_spare_disk"
|
||||||
|
La clef de correspondance (KERNEL) et une clef d'assignation (NAME).
|
||||||
|
|
||||||
|
### Règles basiques `man udev`
|
||||||
|
|
||||||
|
Les clefs les plus communes:
|
||||||
|
|
||||||
|
- KERNEL : le nom du périphérique donné par le noyau;
|
||||||
|
- SUBSYSTEM : le nom du sous système contenant le périphérique;
|
||||||
|
- DRIVER : le nom du pilote du périphérique.
|
||||||
|
|
||||||
|
Les clefs d'assignation les plus communes:
|
||||||
|
|
||||||
|
- NAME : nom du périphérique "node";
|
||||||
|
- SYMLINK : liste des liens symboliques, ceux-ci étant les noms alternatifs pour le périphérique..
|
||||||
|
|
||||||
|
On peut avoir plein de fichiers d'extension .rules
|
||||||
|
Un périphérique peut être contrôlé par plusieurs règles
|
||||||
|
|
||||||
|
### Utilisation de sysfs - Organisation de sysfs
|
||||||
|
|
||||||
|
- Outil servant à écrire des règles.
|
||||||
|
- Structure très simple
|
||||||
|
- La commande suivante permet de lister les périphériques :
|
||||||
|
find /sys -name dev
|
||||||
|
- La commande suivante permet de trouver un périphérique tout juste branché :
|
||||||
|
find /dev/bus/usb/ '!' -type d -mmin -5
|
||||||
|
|
||||||
|
Sysfs quand Gaulène le dit in dirait qu'il dit "si ses fesses". Exemple : "si, ses fesses on peut faire plein de choses avec".
|
||||||
|
|
||||||
|
### Permissions et propriétés
|
||||||
|
|
||||||
|
Udev vous permet de gérer dans vos règles les propriétés et les permissions de chaque périphérique.
|
||||||
|
|
||||||
|
La clef d'assignation GROUP vous permet de définir à quel groupe appartient un périphérique "node". Dans cet exemple, les périphériques framebuffer appartiennent au groupe Video :
|
||||||
|
`KERNEL=="fb[0-9]*", NAME="fb/%n", SYMLINK+="%k", GROUP="video"`
|
||||||
|
|
||||||
|
Dans cet exemple, l'utilisateur John sera mis comme propriétaire pour les lecteurs de disquettes :
|
||||||
|
`KERNEL=="fd[0-9]*", OWNER="john"`
|
||||||
|
|
||||||
|
Cet exemple définit que le périphérique peut être utilisé par tout le monde :
|
||||||
|
`KERNEL=="inotify", NAME="misc/%k", SYMLINK+="%k", MODE="0666"`
|
||||||
|
|
||||||
|
Il est par exemple possible grâce aux règles udev de faire un script qui se déclenche en fonction du numéro de série d'un périph branché. Mais ça marche pas toujours.
|
||||||
|
|
||||||
# Driver
|
# Driver
|
||||||
|
|
||||||
|
@ -1038,4 +1099,3 @@ prépare la traduction : si des mots sont pas compwris, communication possible v
|
||||||
### Grammaires
|
### Grammaires
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue