Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Chapitre I
Introduction au Système d’éxplotation
Linux
Formateur :Naima MEKERRI
[Link]@[Link]
Le contenu de ce document est soumis à la Licence de Documentation Libre
(GNU Free Documentation License).
1
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell
5.Définition d’une session.
2
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell
5.Définition d’une session.
3
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
1-Définition d’un système d’exploitation
L’ordinateur est un ensemble de ressources matérielles
(hardware) exemple processeur,mémoire, disque dur, …
Un Système d’Exploitation (SE), Operating System en
anglais (OS), est un ensemble de programmes (logiciels) qui
permettent d’assurer la bonne gestion de l’ordinateur et de ses
périphériques.
Il est l’interface qui permet de faire le lien entre l’utilisateur,
les programmes et les composants de l’ordinateur. Quand vous
allumez votre ordinateur, c’est grâce à cela que vous voyez
des fenêtres, que vous pouvez gérer vos fichiers, installer des
programmes ou des périphériques externes.
4
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Utilisateur
Application
Système exploitation
Matériel
5
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Exemples de systèmes d’exploitation :
Microsoft Windows,
Unix,
GNU Linux,
BSD,
Mac (Machine apple),
Android,
IOS (Cisco Internetworking Operating System)
6
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell.
5.Définition d’une session.
7
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Génération 1 : (milieu 1940) : les premières machines à calculer
sont construites au moyen de tubes électroniques (tubes à vides). Le
terme «système d’exploitation» n’existait pas encore.
Les programmeurs communiquaient via un langage machine des 0
et des 1.
8
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Génération 2 : (1955-1965) : transistors et traitement par lot :
C’est le début des systèmes d’exploitation.
Apparition des cartes perforées;
Apparition des assembleurs;
9
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Génération 3 : (1965-1980) : circuits intégrés
Apparition des circuits intégrés;
Apparition des disques magnétiques;
Notion de familles d’ordinateurs compatibles (IBM System/360);
Multiprogrammation.
Naissance système d’exploitation créé en utilisant le langage de
programmation C , c’est l’évolution d’UNIX (vers 1970).
Les systèmes d’exploitation tels que MacOS, MS-DOS et
Windows sont apparus dans les années 1980 .
10
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Génération actuelle :
Systèmes répartis (systèmes client/serveur;connectivité inter-
serveurs;
Système embarqués, (Systèmes automobiles,Traqueurs de
fitness,Dispositifs médicaux,Distributeurs automatiques de
billets,Bornes de recharge pour véhicules électriques).
Objets connectés, (Caméras,Lunettes ,Porte-clés,Balances,Les
Smartwatches)
11
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell
[Link] d’une session
12
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Qu’est-ce que Unix ?
Système créé en 1969 chez AT&T (American Telephone &
Telegraph Company).
Fin des 70 : réécriture à Berkeley : BSD 4.1
Souche AT&T évolue vers System V.
Souche BSD reprise chez Sun, DEC et HP
Début des 90 : multiples combinaisons des 2 souches,arrivée
AIX et OSF/1, SunOS (BSD) devient Solaris (System V) …
Une normalisation s'impose…
13
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
14
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
1969 : Tout commence avec UNIX, créé par AT&T et Bell
Labs. C’est un système multi-tâches, multi-utilisateurs et écrit en
C.
1980 : Microsoft invente le XENIX, OS basé sur UNIX et qui
tourne sur PC.
1986-1987 : MINIX est un petit OS qui tient sur une disquette de
360Ko.
15
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
1991 :Un jeune étudiant finlandais de l'Université de Helsinki, Linus
Torvalds fit l'acquisition d'un 386 IBM et comme le système
d'exploitation standard (MSDOS/Windows 3.1) ne lui convenait pas, il
décide d'écrire lui-même une nouvelle monture d'UNIX (les versions
d'UNIX disponibles à l'époque étant trop chères pour sa bourse).
Afin de l'aider dans sa tâche, il fait appel à la bonne volonté d'autres
programmeurs. Il se forme ainsi une équipe solide de programmeurs
talentueux prête à relever ce défi monumental.
16
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
La philosophie Unix
Faire que chaque programme fasse une seule chose et bien.
Préférer la portabilité à l'efficacité.
Éviter les interfaces captives.
Bâtir des noyaux de système d'exploitation petits et légers.
Plusieurs niveaux d'abstraction dans le système :
– Noyau: niveau matériel
– Interpréteurs de commande: niveau texte
– X Windows: niveau graphique
17
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Principales caractéristiques d'Unix
Depuis le début dans les années 1970!
Multi-utilisateur et sécurisé:
– Par défaut, les utilisateurs ordinaires ne peuvent pas toucher aux
fichiers d'autres utilisateurs. En particulier, ils ne peuvent ni
modifier les paramètres du système, ni supprimer des
programmes, etc.
Multi-tâches: Prise en charge de multiples processeurs.
Extrêmement flexible.
Prise en charge du réseau
18
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Couches dans un système Unix
Noyau
Bibliothèque C
Bibliothèques systèmes
Bibliothèques d'applications
Programmes utilisateurs
19
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Le succès d'UNIX (et de LINUX)
Sans doute parce que:
Écrit dans un langage de haut niveau: C (C++, Objective C);
Une interface simple et puissante : les shells, qui fournissent
des services de haut niveau;
Un système de fichier hiérarchique qui permet une maintenance
simple et une implémentation efficace;
20
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Une distribution c’est :
Noyau + commandes + contribs + outils config
Linux est un système d'exploitation très riche. On peut y trouver de
nombreux logiciels différents et il existe des centaines de façons
différentes de l'installer.
Pour simplifier la vie des utilisateurs et pour leur permettre de
faire un choix, on a créé différentes distributions de Linux.
21
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Se chargent de publier un ensemble cohérent de versions
compatibles du noyau, de la bibliothèque C, des compilateurs, des
outils... Cela représente un travail très conséquent!
Les outils sont disponibles sous forme de paquetages qui peuvent
facilement être installés, supprimés ou mis à jour.
Les dépendances entre outils sont gérées automatiquement.
22
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Voici ce qui peut différer d'une distribution à l'autre :
L'installation (elle peut être très simplifiée comme très compliquée)
.
La gestion de l'installation des programmes.
Les programmes préinstallés sur l'ordinateur (par exemple l’office
vient prés installé avec linux ubuntu).
23
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
En fait, une distribution c'est un peu l'emballage de Linux. Le cœur,
lui, reste le même sur toutes les distributions.
Quelle que soit la distribution que vous installez, vous avez un Linux
compatible avec les autres. Certaines distributions sont juste plus ou
moins faciles à prendre en main.
24
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Types de distributions :
Distributions commerciales: incluent de l'assistance technique.
Le code source est libre, mais les binaires ne sont pas libres d'accès.
Distributions communautaires: sources et binaires sont librement
disponibles. Ne comprennent pas d'assistance technique.
25
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Exemple de distributions commerciales:
Distribution WebSite Logo
RedHat
[Link]
26
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Les distributions de GNU/Linux
Exemple de distributions communautaires:
Distribution WebSite Logo
Debian [Link]
CentOS [Link]
27
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
La distribution debian
Debian est la seule distribution qui soit gérée par des personnes
comme nous (doués en programmation).
Les autres distributions sont gérées par des entreprises, ce qui ne les
empêche pas d'être Open Source et gratuites, même si on peut aussi les
acheter pour avoir droit à une assistance (hotline...).
Quelques distributions basées sur Debian :
MXLinux
Knoppix
Ubuntu
KaliLinux,
etc... 28
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Cycle de version
Un cycle de révision fournit des mises à jour et des nouvelles versions.
On distingue :
-révisions mineures : corrections de bugs ou des ajouts de
fonctionnalités secondaires,
-révisions majeures : nouvelles fonctionnalités ou une nouvelle version.
Exemple Debian Linux :
-Chaque version Stable a une durée de vie prévue d'environ 5 ans,
(Long Term Support, LTS)
-Une nouvelle release chaque 2 ans,
Debian11.09 , debian12.01
On trouve aussi les notions : oldstable,testing,unstable,stable
29
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Cycle de version
Exemple Ubuntu :
Version standard sort 2 fois par an (supportée pendant 9 mois)
Version LTS (Long Term Support) une fois tous les 2 ans supportée
pendant 5 ans :
2 ans pour les màj de sécurité et de pilotes matériel
3 ans en plus pour les màj de sécurité seulement
Exemple :
Ubuntu21.04 et ubuntu21.10 c’est des versions standards
Ubuntu22.04 et 22.10 c’est des versions LTS
30
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Cycle de version
31
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Structure de base de Linux
L'interpréteur de commandes
n'est PAS inclus dans le
noyau
UNIX ( => pas unique ;
chaque utilisateur peut
choisir son interpréteur )
32
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Système de fichiers Linux
Le système de fichier constitue un élément clé du système Linux.
Vu par l’utilisateur, le système de fichier est organisé en une structure
arborescente dont les nœuds sont des répertoires et les feuilles des
fichiers ordinaires.
Un fichier peut :
contenir des données.
être un lien sur un autre fichier.
être un moyen d'accès à un périphérique (mémoire, écran,
disque dur, …)
être un canal de communication entre processus
33
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
L’arborescence Linux est un ensemble de systèmes de fichiers raccordés
les uns aux autres.
La racine (unique) est le « / » et se dénomme root
34
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
/ Répertoire racine: contient l’ensemble des répertoires
/boot : contient les fichiers nécessaires au démarrage du système,
notamment le noyau vmlinuz.
/bin : contient les commandes majeures souvent utilisées (ls, mkdir, …).
Les autres commandes sont dans /usr/bin
/dev : regroupe les fichiers de périphérique ; ce sont des fichiers
spéciaux qui constituent des interfaces avec les pilotes de périphérique
(ils n’ont pas de contenu)
/etc: contient les fichiers de configuration du système
/home: est destiné à recevoir les répertoires personnel des utilisateurs
/lib: regroupent les bibliothèques partagées (notamment la Libc6 sur
laquelle reposent la majorité des programmes)
35
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
/proc : c’est un pseudo-système de fichiers; les fichiers qui se
trouvent sous /proc pointent vers des programmes en mémoire vive qui
lisent des informations systèmes centrales ; ils n’occupent pas de place
sur le disque
/root : contient le répertoire personnel de l’administrateur (/root figure
dans le système de fichier racine)
/sbin : contient les commandes d’administration
/tmp: regroupent les fichiers temporaires (créés pendant l’utilisation de
certains programme, comme les éditeurs)
/var : est l’emplacement des données variables (travaux d’impressions en
attente, courrier électronique reçu …)
36
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
/usr : contient le reste des données et programmes du système, le tout
regroupé dans une sous-arborescence :
•/usr/include : fichiers d ’entête C ou C++
•/usr/doc : fichiers de documentation de Linux.
•/usr/src : source du noyau
•/usr/X11R6 : répertoire racine de toutes les données de
l’environnement graphique X Window
37
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Syntaxe des fichiers Linux:
-La syntaxe d’un nom de fichier n’est pas très stricte. Il est recommandé
de limier le nom d’un fichier à 14 caractères au plus.
Le nom est souvent composé de deux parties :
la base ; et
l'extension qui se trouve après le caractère '.'
L'extension d'un nom de fichier désigne la nature de son contenu (texte,
image, son, ...)
38
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Caractères acceptables pour les noms de fichiers
A—Z Lettres majuscules
a—z Lettres minuscules
0—9 Chiffres
_, Caractère souligné et caractère virgule
. Caractère point
Attention :
Linux différencie les majuscules et les minuscules.
Linux autorise jusqu’à 255 caractères pour le nom du fichier.
La longueur minimum est d’un (1) caractère.
Ne pas utiliser le caractère espace comme nom de fichier ou
répertoire !!
39
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
On peut distinguer plusieurs catégories des fichiers :
Partageables : pouvant être partagé entre plusieurs machines différentes
(répertoires des utilisateurs).
Non partageables: spécifiques à une machine particulière (fichiers de
blocage de périphérique, les locks ).
Variables : tout ce qui change sans l'intervention de l'administrateur
système.
Statiques: tout ce qui ne change pas sans l'intervention de
l'administrateur système (les binaires, les bibliothèques, la
documentation …)
40
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Répertoires spéciaux
./ Le répertoire courant. Utile pour les commandes qui ont un
répertoire comme argument. Également utile parfois pour
lancer des commandes dans le répertoire courant (voir plus
tard) Ainsi ./[Link] et [Link] sont équivalents
../ Le répertoire parent (englobant). Fait toujours partie du
répertoire .(voir ls -a). Unique référence au répertoire parent.
Utilisation la plus courante: cd ..
41
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Le chemin d’accès :
Pour identifier un fichier dans l'arborescence on indique le nom complet
du fichier.
Un fichier est repéré par son nom et sa position dans l’arborescence: son
chemin d’accès ou le pathname.
Le nom complet du fichier est représenté par :
• Le chemin composé de répertoires qui conduit de la racine de
l'arborescence du système de fichiers jusqu'au répertoire qui contient le
fichier
• Chaque répertoire est distingué des autres par un symbole séparateur "/"
• le nom du fichier
42
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Séparateur
/home/students/course/[Link]
Chemin Nom
43
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Chemin absolue et chemin relatif
On distingue deux expressions d'un chemin :
• Le chemin d'accès absolu (chemin absolu)
• Le chemin d'accès relatif (chemin relatif)
Le chemin absolu commence par le symbole séparateur (slash)/, il
exprime le chemin complet à partir de la racine de l'arborescence.
Le chemin relatif commence par un autre caractère que le caractère
séparateur. Il indique un chemin à partir du répertoire de travail courant
44
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Chemin absolue et chemin relatif
Le chemin absolu commence par le symbole séparateur / (slash), il
exprime le chemin complet à partir de la racine de l'arborescence.
Un chemin absolu identifie une ressource en commençant à la racine de
l’arborescence, avec le caractère /. Un chemin absolu ne dépend pas du
répertoire courant et est donc valide partout.(à condition d’être sur la
même machine)
Le chemin relatif commence par un autre caractère que le caractère
séparateur. Il indique un chemin à partir du répertoire de travail courant.
Il identifie une ressource à partir du répertoire courant. Il dépend donc
du répertoire courant et n’est pas valide partout.
45
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Exemple : /
home root etc
cours images
Pour atteindre le fichier [Link]
Chemin absolue :
[Link] [Link] /home/cours/[Link]
Supposant que nous sommes dans
/home :
Chemin absolu pour atteindre
[Link] :
../cours/[Link] 46
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell
5.Définition d’une session.
47
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Interpréteurs de commandes
Interpréteurs de commandes: outils pour exécuter des commandes
tapés par un utilisateur.
Appelés “shells” signifiant l’ interface système (ou coque logicielle),
permettant d’accéder aux fonctionnalités internes du système d'exploitation.
Les commandes sont tapées dans un terminal en mode texte, constitué soit
par une fenêtre dans un environnement graphique, soit par une console sur un
écran en texte seul.
Les résultats sont aussi affichés sur le terminal. Aucun graphique n’est
nécessaire.
Les interpréteurs de commandes peuvent être programmables: ils fournissent
toutes les ressources nécessaire pour l’écriture de programmes complexes
(variables, conditions, boucles...)
48
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Interpréteurs les plus connus
Interpréteurs de commande les plus connus et les plus populaires :
Sh : Le Bourne shell (obsolète) : Le shell de base qu’on trouve
traditionnellement dans les systèmes Unix, par Steve Bourne.
Csh : Le C shell (obsolète) : Shell avec une syntaxe à la C, qui a
connu son heure de gloire.
Tcsh : Le TC shell (toujours très populaire).Une implémentation
compatible avec le C shell, avec des fonctionnalités avancées (complète
les noms de commandes, rappel de commandes antérieures et bien
d’autres...)
Bash : Le Bourne Again shell (le plus populaire).Une version
améliorée de sh avec de nombreuses fonctions
nouvelles.
49
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
50
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Sommaire
1.Définition d’un système d’exploitation.
[Link].
3.Définition d’un système UNIX (structure et fonctions de base).
4.Définition du shell
5.Définition d’une session.
51
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Se connecter à Linux
Rappel: Linux est système
Multi-utilisateur
Multi-tâche
Pour se connecter on a besoin d'un:
compte utilisateur
mot de passe
52
Université des Sciences et de la Technologie Houari Boumedienet Maghreb
Faculté d’Informatique
Cours Système d’exploitation (SYS01)
Linux comprends plusieurs consoles virtuelles, sur lesquelles on peut
se connecter ( login).
Le nombre de consoles virtuelles actives après le démarrage du
système est défini dans le fichier . Par défaut :/etc/inittab
•6 consoles en mode texte
•1 console en mode graphique
•Des raccourcis clavier permettent le passage entre les différents
consoles :
texte texte
texte graphique
graphique texte
53