0% ont trouvé ce document utile (0 vote)
50 vues28 pages

CH 2

Transféré par

ayyesaadbouh
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
50 vues28 pages

CH 2

Transféré par

ayyesaadbouh
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Systèmes d'exploitation

Institut Supérieur du Numérique

Année Scolaire 2021/2022 Source Audrey Queudet


Université de Nantes

3/8/2022 1
Plan du cours
Introduction aux systèmes d'exploitation
Présentation générale d'UNIX

Programmation shell

Processus et parallélisme

Ordonnancement

Communication et synchronisation

Gestion de la mémoire

Gestion de E/S

3/8/2022 2
Présentation générale d'UNIX

Les origines

UNIX est né au sein des laboratoires BELL (Filiale d'AT&T)

Développé à partir de 1969 par Ken Thompson et Dennis Ritchie

Dès 1973, UNIX est réécrit à 90% en langage C

En 1975, les sources d'Unix sont diffusées dans les universités

Développement de 2 branches :
BSD développé à l'Université de Berkeley (Californie)
System V vendu par AT&T à Sun Microsystems, IBM, DEC et HP

UNIX® est une marque déposée depuis 1994

3/8/2022 3
Présentation générale d'UNIX

Caractéristiques principales

Multitâche

Multi-utilisateur

Portable

Interactif

Système à mémoire virtuelle

Un riche panel d'outils (plusieurs centaines)

3/8/2022 4
Présentation générale d'UNIX

Outils disponibles

Editeurs de texte

Développement logiciel

Communication

Documentation

Bureautique

3/8/2022 5
Présentation générale d'UNIX

Structure générale

Langages
de commandes (shell)

Outils
d’édition
Outils
Gestion Gestion
Ordonnanceur de
E/S mémoire Niveau Niveau Niveau
compil.
Noyau Exécutif SE

Gestion
du temps

Outils de
debuggage

3/8/2022 6
Présentation générale d'UNIX

Le système de fichiers UNIX

Sous UNIX, tout élément est représenté sous forme de fichier

4 types de fichiers :
Ordinaire : données, programme
Répertoire : contient d'autres données ou répertoires
Lien symbolique : pointe vers un autre fichier
Spécial : permet l'accès à un périphérique

Chaque fichier est caractérisé par son nom, sa taille, ses droits d'accès,
son propriétaire, ses dates de création, de modification...

Structure arborescente de fichiers

3/8/2022 7
Présentation générale d'UNIX

L'arborescence UNIX
racine

Liste des
périphériques

Commandes
système
Accès aux
périphériques

Utilitaires

Fichiers temporaires

Bibliothèques
système
19
3/8/2022 Utilisateurs 8
Présentation générale d'UNIX

Accès aux fichiers

Chemin absolu :
/home/queudet/programmes/progC/p1.c
/home/queudet/textes/lettre.txt

Chemin relatif au répertoire d'accueil (/home/queudet sur l'exemple) :


~/progc/p1.c
~/textes/lettres.txt

Chemin relatif au répertoire courant (programmes sur l'exemple) :


progc/p1.c
../textes/lettres.txt

Permet de remonter d'un niveau dans l'arbre

3/8/2022 9
Présentation générale d'UNIX

Utilisateurs et
groupes
Le fichier /etc/passwd contient toutes les informations relatives aux
utilisateurs (logins, mots de passe, ...).

Chacune de ses lignes possède le format spécial suivant :


nom_du_compte : mot_de_passe : no_UID : no_GID : commentaire : répertoire_home : prog

Identifiant utilisateur Programme de démarrage


(entier) après connexion
(un shell généralement)
Identifiant de groupe
(entier)

Exemples :

root:12dGe12ge35qF:0:0:root:/users/root:/bin/bash
pascal:12dGeg5AqFdhr2:500:100:Pascal:/users/pascal:/bin/tcsh

3/8/2022 10
Présentation générale d'UNIX

Les droits d'accès

3 catégories d'utilisateurs : 4 types de fichier :


Propriétaire (user) u Ordinaire -
Groupe (group) g Répertoire (directory) d
Autres (others) o Lien symbolique (link) l
Spécial c ou b

3 types de droits : Les droits d'un fichier sont


Lecture (read) r représentés par une chaîne de
10 caractères :
Ecriture (write) w
x - rxw rw- r--
Exécution (execute)

3/8/2022 11
Présentation générale d'UNIX

Les droits d'accès en octal

Droits Valeur
--- 0

--x 1

-w- 2

-wr 3

r-- 4

r-x 5

rw- 6

rwx 7

Exemples :
-rw :
drw-r—-r-- :
drwxr-x--- :
3/8/2022 12
Présentation générale d'UNIX

Les commandes de base UNIX

A) Documentation en ligne
B) Navigation dans l'arborescence
C) Visualisation de fichiers
D) Manipulation de fichiers
E) Gestion des droits d'accès
F) Processus
G) Identification des utilisateurs
H) Recherche de fichiers ou de chaînes de caractères
I) Utilitaires classiques : éditeurs, compilateurs
J) Redirections et tubes

3/8/2022 13
Présentation générale d'UNIX

A) Documentation en ligne (1)


L'accès à la documentation en ligne se fait via la commande man

Une page de manuel contient, entre autres, les rubriques suivantes :

TITLE
NAME
SYNOPSI
S
DESCRIPTIO
N OPTIONS
USAGE
EXAMPLES
SEE ALSO
3/8/2022 14
Présentation générale d'UNIX

A) Documentation en ligne (2)

Visualisation d'une page du manuel :


man [-s section] commande

Sections :

Recherche des pages qui se rapportent à un mot clé :


man -k mot_cle

3/8/2022 15
Présentation générale d'UNIX

B) Navigation dans l'arborescence

Affichage du chemin absolu du répertoire courant :


pwd

Changement de répertoire :
cd chemin
cd /home
cd textes
cd ../programmes

Création d'un répertoire :


mkdir rep_a_creer
mkdir /home/queudet/enseignements

Suppression d'un répertoire vide :


rmdir rep_a_supprimer
rmdir enseignements
3/8/2022 16
Présentation générale d'UNIX

C) Visualisation de fichiers (1)

Listage du contenu des répertoires et des informations sur les fichiers :


ls [-options]

Options : - d - l
- i - a
- x - t
- u - r
- R - F

Exemple :
ls -l textes
total 2
-rw-rw-r-- 1 Olivier etudiant 168 Dec 2 15:09 chant.txt
-rw-r--r-- 1 Olivier etudiant 81 Nov 30 14:19 lettre.txt

3/8/2022 17
Présentation générale d'UNIX

C) Visualisation de fichiers (2)

Affichage d'un ou plusieurs fichiers de type texte :


cat textes/lettre.txt

Listage des n premières lignes d'une liste de fichiers de type texte :


head -3 textes/chant.txt

Listage des n dernières lignes d'une liste de fichiers de type texte :


tail -2 textes/chant.txt

Affichage page par page d'un fichier de type texte :


more programmes/progC/description_p1.txt

3/8/2022 18
Présentation générale d'UNIX

D) Manipulation de fichiers

Copie d'un fichier vers un autre fichier :


cp chemin_source chemin_destination
cp programmes/progc/p1.c programmes/archive/prg1.c

Changement du nom ou déplacement d'un fichier :


mv chemin_source chemin_destination
mv programmes/progc/p1.c programmes/progc/programme1.c
mv programmes/progc/*.c programmes

Supression d'un ou plusieurs fichiers :


rm chemin
rm programmes/progc/p1.c
rm programmes/progc/*.c

3/8/2022 19
Présentation générale d'UNIX

E) Gestion des droits d'accès

Changement des droits d'accès d'un fichier spécifié :


chmod [-R] u|g|o +|- r|w|x chemin
chmod [-R] valeur_en_octal chemin

Exemple :
chmod go+rx programmes/progc
chmod o-w textes/*.txt
chmod 765 textes/lettre.txt

Changement du groupe d'appartenance d'un fichier ou d'un répertoire :


chggrp [-R] groupe chemin
chggrp prof /home/Olivier

3/8/2022 20
Présentation générale d'UNIX

F) Processus

Liste des processus satisfaisant un critère donné (spécifié en option) :


ps [-options]

Exemple :
ps -u dupont
ps -r
ps -elf

Destruction d'un processus :


kill -9 no_processus
kill -9 521

Lancement en arrière-plan d'un processus :


nom_processus &
prog1 &

3/8/2022 21
Présentation générale d'UNIX

G) Identification des utilisateurs

Liste des utilisateurs connectés :


who

Affichage du login sous lequel l'utilisateur est connecté :


whoami
Olivier

Affichage du no et du nom de l'utilisateur, du no et nom de ses groupes :


id
uid=501(Olivier) gid=502(etudiant) groups=502(etudiant), 503(amis)

3/8/2022 22
Présentation générale d'UNIX

H) Recherche de fichiers ou de ch. de caractères (1)

Affichage des lignes d'un ou plusieurs fichiers contenant une ch. de car. :
grep [-options] expression fichier
grep "Cher Monsieur" textes/*.txt
textes/lettre.txt:Cher Monsieur,
grep "c.*e" textes/*.txt
textes/lettre.txt:Ravi d'avoir fait votre connaissance.
grep -l sucre /home/Clara/recettes/confitures/*
abricots.txt poires.txt

Comptage du nombre de lignes, de mots et/ou de caractère d'un fichier :


wc [-options] fichier
wc textes/lettre.txt
7 10 81 textes/lettres.txt
wc -l textes/lettre.txt
7 textes/lettre.txt

3/8/2022 23
Présentation générale d'UNIX

H) Recherche de fichiers ou de ch. de caractères


(2)

Affichage des fichiers répondant à un critère spécifié en option :


find repertoire [-options] -print

Options : -name -type


-user -group
-size -atime
-mtime -ctime
-perm -links

Exemples :
find programmes -name "*.c"
./programmes/progc/p1.c
./programmes/progc/p2.c
find . -type d -name "*s" -print
./programmes/
./textes/

3/8/2022 24
Présentation générale d'UNIX

I) Utilitaires classiques : éditeurs, compilateurs

Editeur de texte en standard sous Unix :


vi

Autres éditeurs :
emacs
gedit
xedit

Compilateurs :
cc
gcc
g++
f77
pc

3/8/2022 25
Présentation générale d'UNIX

J) Redirections et tubes (1)

Redirections des entrées-sorties :

0 1 1 : entrée standard (STDIN)


commande 2 : sortie standard (STDOUT)
3 : sortie des erreurs (STDERR)
2

Redirection de l'entrée standard :


commande < chemin
grep "tmp" < test

Redirection de la sortie standard :


commande > chemin
ls > test

3/8/2022 26
Présentation générale d'UNIX

J) Redirections et tubes (2)

Redirection de la sortie d'erreur :


commande 2> chemin
ls -l 2> /dev/null

Redirection de la sortie d'erreur vers la sortie standard :


commande 2>&1 chemin
cat fichier > copie 2>&1

Redirection de la sortie d'une commande vers l'entrée d'une autre (tube):


1 1
tube 0
0
commande1 commande2
2 2
commande1 | commande2
grep "Monsieur" *.txt | wc -l

3/8/2022 27
Présentation générale d'UNIX

Interprétation des
commandes
Affichage d'un prompt

Attente de la frappe d’une ligne et analyse de la ligne

Exécution de la ou les commande(s)

101110010
1100011101
1110010110
1111000101
110001011

ls -l
cat f
Le Shell mv fi
wc -l
cp te
grep

3/8/2022 28

Vous aimerez peut-être aussi