Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Topic à L’examen
101: LPI101
System Architecture
Weight: 2
Description:
Candidates should be able to determine and configure fundamental
system hardware
Key Knowledge Areas:
●
Enable and disable integrated peripherals.
●
Differentiate between the various types of mass storage devices.
●
Determine hardware resources for devices.
●
Tools and utilities to list various hardware information (e.g. lsusb,
lspci, etc.).
●
Tools and utilities to manipulate USB devices.
●
Conceptual understanding of sysfs and udev.
●
Les fabricants d’ordinateurs professionnels et personnels ont intégré dans leurs
machines une variété de composants matériels qui devaient être pris en charge à leur
tour par l’OS.
➔
Tâche difficile voire impossible du point de vue des développeurs de systèmes
d’exploitation, à moins que l’industrie ne se mette d’accord sur les normes
relatives aux jeux d’instructions et à la communication avec les périphériques.
➔
Ces normes facilitent le développement et la maintenance d’un système
d’exploitation qui n’est pas lié à un type de matériel spécifique.
●
La complexité du matériel intégré sous le capot nécessite parfois certains ajustements
quant à la manière dont les ressources matérielles sont exposées au système afin
que celui-ci puisse être installé et fonctionner correctement.
4
Introduction
●
La plupart des ordinateurs offrent un outil de configuration qui peut être exécuté à
l’allumage de la machine :
➔
jusque vers le début des années 2000 : utilitaire de configuration implémenté
dans le BIOS (Basic Input/Output System, système élémentaire d’entrée/sortie),
la norme pour le firmware (micrologiciel) contenant les routines de configuration
de base que l’on peut trouver sur les cartes mère x86.
➔
À partir de la fin de la première décennie des années 2000, les machines
basées sur l’architecture x86 ont commencé à remplacer le BIOS par une
nouvelle implémentation appelée UEFI (Unified Extensible Firmware Interface,
interface micrologicielle extensible unifiée) dotée de fonctionnalités plus
sophistiquées pour l’identification, les tests et la configuration matérielle ainsi
que les mises à jour du firmware.
5
Introduction
6
Activation des périphériques
●
L’utilitaire de configuration du système s’affiche lorsqu’on appuie sur une touche
spécifique lors de l’allumage de l’ordinateur : F2-F12-SUPP(varier d’un fabricant à
l’autre)
●
Le BIOS permet de :
➔
prendre en charge ou de désactiver les périphériques intégrés,
➔
activer la protection contre les erreurs et de modifier les paramètres matériels tels
que les interruptions matérielles (IRQ) et l’accès direct à la mémoire (DMA).
7
Inspection du matériel sous Linux
●
lspci : Affiche tous les périphériques actuellement connectés au bus PCI (Peripheral
Component Interconnect). Les périphériques PCI peuvent être intégrés à la carte
mère, comme un contrôleur de disque, ou alors ils peuvent être connectés sur les
ports d’extension de la carte mère, comme une carte graphique externe.
●
lsusb : Répertorie les périphériques USB (Universal Serial Bus) actuellement
connectés à la machine. Même s’il existe des périphériques USB pour presque tous
les usages imaginables, l’interface USB est utilisée principalement pour connecter
des périphériques d’entrée - claviers, dispositifs de pointage - et des supports de
stockage amovibles.
8
Inspection du matériel sous Linux
$lspci
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core
Processor Thermal Subsystem (rev 0c)
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen
Core Processor Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Comet Lake Thermal Subsytem
9
Inspection du matériel sous Linux
$ lspci -s 00:02.0 -v
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02) (prog-if 00 [VGA controller])
10
Inspection du matériel sous Linux
$ lspci -s 00:02.0 -k
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02)
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 27c6:55a4 Shenzhen Goodix Technology Co.,Ltd. Goodix FingerPrint Device
Bus 001 Device 003: ID 04f2:b6d9 Chicony Electronics Co., Ltd Integrated Camera
Bus 001 Device 002: ID 17ef:60ac Lenovo Lenovo 300 Wireless Compact Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
11
Inspection du matériel sous Linux
$ lsusb -d 17ef:60ac -v
Bus 001 Device 002: ID 17ef:60ac Lenovo Lenovo 300 Wireless Compact Mouse
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
12
Inspection du matériel sous Linux
$ lsusb -t
●
Il est possible que tous les périphériques ne soient pas associés à un module correspondant. La
communication avec certains périphériques peut être gérée directement par l’application, sans passer
par l’intermédiaire d’un module
●
Lorsqu’un module approprié existe, son nom apparaît à la fin de la ligne correspondant au périphérique.
●
La Class du périphérique identifie la catégorie générale, comme Human Interface Device, Wireless ou
Mass Storage, ...
13
Inspection du matériel sous Linux
Pour vérifier quel périphérique utilise le module xhci_hcd/6p qui figure dans le listing précédent, les
numéros de Bus et de Dev doivent être fournis en argument à l’option -s de la commande lsusb :
lsusb -s 02:01
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
lsmod
[...]
Module : Le nom du module- Size : La quantité de RAM occupée par le module, en octets.- Used by : Les
modules dépendants
14
IRQ-DMA
IRQ
●
An interrupt request (IRQ) is a hardware signal sent to the processor instructing it to suspend its
current activity and handle some external event, such as a keyboard input or a mouse
movement.
●
In x86 based computer systems, IRQs are numbered from 0 to 15.
●
Newer computers, including x86-64 systems, provide more than these 16 interrupts (usually 24).
●
Some interrupts are reserved for specific purposes, such as the keyboard and the real-time
clock; others have common uses but may be reassigned; and some are left available for extra
devices that may be added to the system.
DMA
●
DMA (Direct memory access) is an alternative method of communication to I/O ports that
permits the device to transfer data directly, without the CPU’s attention.
●
The system can request that the data be fetched into a particular memory region and continue
with other tasks until the data is ready. This may result in lower CPU requirements for the I/O
activity, which can improve system performance.
15
IRQ-DMA
16
Fichiers d’informations et fichiers de périphériques
●
Les commandes lspci, lsusb et lsmod agissent comme des frontaux pour lire les informations
relatives au matériel stockées par le système d’exploitation. Ce type d’information est conservé dans
des fichiers spéciaux dans les répertoires /proc et /sys.
●
Le répertoire /proc contient des fichiers avec des informations concernant les processus en cours et
les ressources hardware.
●
Parmi les fichiers importants dans /proc pour l’inspection du matériel, on trouve :
➔
/proc/cpuinfo : Liste des informations détaillées sur le(s) processeur(s) trouvé(s) par le système
d’exploitation.
➔
/proc/interrupts : Une liste des numéros des interruptions par dispositif d’entrée/sortie pour
chaque CPU.
➔
/proc/ioports : Liste les plages de ports d’entrée/sortie actuellement enregistrées et utilisées.
➔
/proc/dma : Liste les canaux DMA (accès direct à la mémoire) enregistrés en cours d’utilisation.
17
Fichiers d’informations et fichiers de périphériques
●
/sys a pour vocation spécifique de stocker les informations sur les périphériques et les données du
noyau relatives au hardware.
●
Chaque fichier à l’intérieur de /dev est associé à un périphérique système, en particulier les
périphériques de stockage.
●
Les périphériques amovibles sont gérés par le sous-système udev, qui crée les périphériques
correspondants dans /dev. Le noyau Linux capture l’événement de détection du hardware et le
transmet au processus udev, qui identifie alors le périphérique et crée dynamiquement les fichiers
correspondants dans /dev, en utilisant un jeu de règles prédéfinies.
●
Dans les distributions Linux actuelles, udev se charge de l’identification et de la configuration des
périphériques déjà présents lors de la mise sous tension de la machine (détection coldplug) et des
périphériques identifiés lorsque le système est en cours d’exécution (détection hotplug). Udev
s’appuie sur SysFS, le pseudo-système de fichiers pour les informations relatives au hardware
monté dans /sys
18