Vous êtes sur la page 1sur 18

Préparation

Topic à L’examen
101: LPI101
System Architecture

Slim MARGHLI-Senior Linux System Administrator


101.1 Determine and configure hardware settings

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.

2 Slim MARGHLI-Senior Linux System Administrator


103.1 Work on the command line

Partial list of the used files, terms and utilities:



/sys/

/proc/

/dev/

modprobe

lsmod

lspci

lsusb

3 Slim MARGHLI-Senior Linux System Administrator


Introduction


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:00.0 Host bridge: Intel Corporation Device 9b61 (rev 0c)

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

00:14.0 USB controller: Intel Corporation Device 02ed

00:14.2 RAM memory: Intel Corporation Device 02ef

00:14.3 Network controller: Intel Corporation Wireless-AC 9462

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])

Subsystem: Lenovo UHD Graphics

Flags: bus master, fast devsel, latency 0, IRQ 140

Memory at c1000000 (64-bit, non-prefetchable) [size=16M]

Memory at a0000000 (64-bit, prefetchable) [size=256M]

I/O ports at 4000 [size=64]

Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]

Capabilities: <access denied>

Kernel driver in use: i915

Kernel modules: i915

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)

Subsystem: Lenovo UHD Graphics

Kernel driver in use: i915

Kernel modules: i915

$ 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

Couldn't open device, some information will be missing

Device Descriptor:

bLength 18

bDescriptorType 1

bcdUSB 1.10

bDeviceClass 0

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 64

idVendor 0x17ef Lenovo

12
Inspection du matériel sous Linux

$ lsusb -t

/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 10000M

/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M

|__ Port 5: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M

|__ Port 8: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M

|__ Port 8: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M

|__ Port 9: Dev 4, If 0, Class=Vendor Specific Class, Driver=, 480M


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

La commande lsmod affiche tous les modules actuellement chargés :

lsmod

Module Size Used by

snd_ice17xx_ak4xxx 13128 1 snd_ice1712

snd_ak4xxx_adda 18487 2 snd_ice1712,snd_ice17xx_ak4xxx

[...]

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

Vous aimerez peut-être aussi