Vous êtes sur la page 1sur 18

Cours de Systmes d'Exploitation

Cours de Systmes d'Exploitation (Unix)


H.Bourzoufi

Universit de Valenciennes - ISTV

-1-

H.Bourzoufi

Cours de Systmes d'Exploitation

Caractristiques d'UNIX

q Portabilit (crit en C)
q Multi-utilisteurs

Plusieurs utilisateurs
connecter et travailler en mme temps.

peuvent

se

Chaque utilisateur a son environnement personnel.

q Multi-tches

Un mme utilisateur peut lancer plusieurs


travaux simultanment.

q Interactif

Il est possible de dialoguer avec l'ordinateur.


Possibilit aussi de lancer des processus (tches) en arrire
plan et en mode diffr (batch).

q Un systme de fichiers hirarchis


(Organisation arborescente)

q Un mcanisme de protection
- identification des utilisateurs
par mot de passe
- protection des fichiers
- Un super-utilisateur

q Une vision simplifie par l'utilisateur des entressorties Les priphriques sont reprsents par des noms de
fichier, et peuvent tre utiliss comme des fichiers ordinaires)

q Le choix dun langage de commandes :


Les shells.

Universit de Valenciennes - ISTV

-2-

H.Bourzoufi

Cours de Systmes d'Exploitation

Structure du systme UNIX

APPLICATION
NOYAU

SHELL

Matriel

UTILITAIRES

q Le noyau gre les tches de base du systme :

L'initialisation du systme
La gestion des ressources
La gestion des processus
La gestion des fichiers
La gestion des Entres/Sorties

q Lutilisateur communique avec le noyau par


l'intermdiaire d'un SHELL. Les shells sont aussi des
langages de commandes et de programmation.

q Les shells les plus connus sont :


BOURNE SHELL KORN-SHELL
C-SHELL
TC-SHELL

q Les utilitaires sont des outils d'interfaage avec le


systme, de programmation et de communication.

Universit de Valenciennes - ISTV

-3-

H.Bourzoufi

Cours de Systmes d'Exploitation

UNE SESSION UNIX

q Etablir une connexion


Login : dupont
password : mot de passe sans cho
Excution du fichier d'initialisation

".login"

/users/licinfo/linf01 % Le prompt
( La connexion est effectue,
le systme attend les commandes)

q Quelques commandes simples :


date ; cal
who
logname; pwd
tty
passwd

Date; calendrier
Qui est connect?
Qui suis je?; O suis je ?
nom du terminal
Changer le mot de passe

q Dialoguer avec un autre utilisateur


Partage des fichiers
messagerie : write, mail

write nom_de_utilisateur
ceci est un essai
.....
Ctrl D (termine le message)
mail nom_de_utilisateur
subject :
Bonjour,
Ceci est un essai,
. (termine le message)
Pour consulter sa bote aux lettres : mail
Universit de Valenciennes - ISTV

-4-

H.Bourzoufi

Cours de Systmes d'Exploitation

LES FICHIERS UNIX

q Un fichier dans UNIX est une squence d'octets, le


noyau n'impose aucune structure spcifique aux
fichiers.

q Le rle d'un fichier est de conserver, de traiter et


transmettre de l'information.

q Diffrents types de fichiers


Ordinaires (ascii ou binaires)
rpertoires ( contiennent des noms de fichiers
et/ou de catalogues)
Spciaux Ils sont associs aux priphriques
Ex : disques, imprimantes, terminaux

Les filtres : permettent la communications entre processus

Universit de Valenciennes - ISTV

-5-

H.Bourzoufi

Cours de Systmes d'Exploitation

Organisation des fichiers


/

dev

etc

Racine

bin

users

usr

licinfo

unix

minfo

linf01

Espace de travail
de linf01

/dev contient les fichiers associs aux priphriques :


Ex : lp : imprimante
ttyn terminal n n
hkn disque dur n n
mtn bande magntiques n n
/etc contient les fichiers d'administration
/bin contient les commandes Unix
/usr commandes et bibliothques supplmentaires
/users rpertoire des utilisateurs
/unix fichiers systmes
Remarque : Unix possde un seul systme de fichiers
DEPLACEMENT DANS LE
Universit de Valenciennes - ISTV

-6-

H.Bourzoufi

Cours de Systmes d'Exploitation

SYSTEME DE FICHIERS

A la connexion, l'utilisateur est automatiquement positionn


dans son rpertoire de connexion .

Ex : /users/deustiosi/iosi01

q Pour se dplacer dans la hirarchie :


cd <nom_rpertoire>
nom_rpertoire peut tre absolu ou relatif :
absolu : prciser tout le chemin
relatif : par rapport au rpertoire courant
Ex : cd /users/deustiosi
cd iosi01

(chemin absolu)
(chemin relatif)

Remarque: un nom absolu commence toujours par "/".

q Quelques commandes simples


pwd
affiche le rpertoire courant
cd
retour au rpertoire de connexion
cd .. monter d'un niveau dans la hirarchie
cd ../.. monter de 2 niveaux dans la hirarchie
la caractre "." dsigne le rpertoire courant.

Universit de Valenciennes - ISTV

-7-

H.Bourzoufi

Cours de Systmes d'Exploitation

Principales commandes sur les fichiers

q Oprations de base sur les rpertoires


Affichage du contenu d'un rpertoire :
commande : ls [options] <nom_rpertoire>
loption -l permet d'obtenir l'ensemble des informations relatives
chaque fichier du rpertoire :
- type de fichier : "-" (fichier ordinaire),
"d" (rpertoire),
"b ou c " (fichiers spciaux)
- droits d'accs
- nom du propritaire
- nombre de liens
- taille
- nom
- date de cration
.........

L'option -R permet d'afficher rcursivement le contenu d'un


rpertoire.
Exemple: ls / (afficher les rpertoires la racine)
dev bin usr users etc unix ...
ls -R /
/dev :
liste des fichiers dans /dev
/bin :
liste des fichiers dans /bin
/users :
/deustiosi :
/iosi01 :
/iosi02 ........
/minfo :
/minf01 ...........

Principales commandes sur les fichiers


Universit de Valenciennes - ISTV

-8-

H.Bourzoufi

Cours de Systmes d'Exploitation

q Oprations de base sur les rpertoires


Cration d'un rpertoire
mkdir <nom_rpertoire>
rmdir <nom_rpertoire> Supprime un
rpertoire vide.

rm -R <nom_rpertoire> supprime tout le


rpertoire.
Montage d'un systme de fichiers
Il est possible d'ajouter un systme de fichiers extrieur en
l'insrant dans la hirarchie.
les commandes mount et unmount permettent de dmonter et de
dmonter un systme de fichiers.
=> L'ajout d'une mmoire de masse est
l'utilisateur.

Universit de Valenciennes - ISTV

-9-

transparent pour

H.Bourzoufi

Cours de Systmes d'Exploitation

Principales commandes sur les fichiers

q Oprations de base sur les fichiers


Visualisation du contenu dun fichier
cat <nom_fichier>
more <nom_fichier>
Renommage et dplacement d'un fichier
mv <source> <destination>
mv essai.c tp1.c
(renommage)
mv tp TPSE
(dplacement )
mv tp TPSE/tp2 (dplacement et renommage)
Copie dun fichier
cp <source> <destination>
Cration de liens sur un fichier
ln <ancien> <nouveau>
Suppression d'un fichier
rm <nom_fichier>
Ex : rm *.o
supprimer tous les fichiers
dextension ".o"
rm a*
supprimer tous les fichiers dont
le nom commence par "a"
rm *
supprime tous les fichiers
rm *.?
supprimer tous les fichiers ayant
une extension dune lettre.
* : une chane quelconque de caractres
? : un caractre quelconque
Universit de Valenciennes - ISTV

-10-

H.Bourzoufi

Cours de Systmes d'Exploitation

AUTRES COMMANDES UTILES

touch

crer un fichier

wc

donne le nombre de caractres (-c),


de mots (-w) ou de lignes (-l)

sort permet de trier par ordre alphabtique


les lignes d'un fichier.
grep

recherche d'un motif dans un fichier


Exemple: grep printf essai.c
grep -l printf *.c (affiche la liste
des fichiers contenant "printf").

head
tail

afficher les premires lignes


afficher les dernires lignes

diff

permet de comparer deux fichiers

find

permet de recherche un fichier

lpr
lpq

imprimer un fichier
afficher les fichiers en attente
dimpression.
lprm
dtruire des fichiers en attente
d'impression.
man(Trs utile) donne le manuel
d'utilisation d'une commande.
Universit de Valenciennes - ISTV

-11-

H.Bourzoufi

Cours de Systmes d'Exploitation

PROTECTION DES FICHIERS

q L'accs aux fichiers est dtermin par trois bits de


permission: r w x (Read, Write, eXecute) applicables
trois classes d'utilisateurs : u g o le propritaire, le
groupe et les autres (Users, Group, Others).
mode symbolique
chmod <qui><permission><opration><fichier>
<qui> valant :

u: utilisateur g: groupe o:autres et a :tous


<permission> :
+ : pour autoriser - : pour interdire
<opration> :
r : lecture
w : criture x : excution
Exemples
chmod g+w montp.c

(les membres du groupe peuvent


crire dans le fichier "montp.c")

chmod og-rwx montp.c (protection en lecture, criture et


excution)

mode octal
chmod <permission><fichier>
permission : UGO (User,Group ,Others : chiffre octal
codant les bits r w x)
Exemple
chmod 740 montp
(rend le fichier accessible en lecture au groupe et
inaccessible aux autres)
Universit de Valenciennes - ISTV

-12-

H.Bourzoufi

Cours de Systmes d'Exploitation

LES PROCESSUS UNIX

q Le processus est l'entit d'excution dans le systme


UNIX.
Toute activit dans UNIX correspond
un processus

q Dans UNIX, il existe deux types de processus :


- Processus systme
(Ex : swapper, crons, getty ....)
- Processus utilisateur qui correspondent
l'excution d'une commande ou d'une application.

q Chaque processus est identifi par un numro : PID


(Process IDentifier)

q La commande ps donne la liste des processus

Universit de Valenciennes - ISTV

-13-

H.Bourzoufi

Cours de Systmes d'Exploitation

LES PROCESSUS UNIX(suite)

q La cration d'un processus se fait par ddoublement :


Un processus est toujours cr par un autre processus
par le mcanisme de fourche "fork".

q On appelle le processus crateur processus pre. Le


processus cr est appel processus fils .
Processus en
cours d'excution
fork()
processus pre
wait()

Processus fils
exit ()

synchronisation

L'appel systme FORK cre une copie exacte du


processus original (L'appelant).

q La valeur de retour de la fonction FORK est 0 pour le


processus fils et est gale au PID du fils dans le
processus pre.

q Le processus fils peut excuter un nouveau code


l'aide

des

Universit de Valenciennes - ISTV

primitives

-14-

EXEC.

H.Bourzoufi

Cours de Systmes d'Exploitation

LES PROCESSUS UNIX(suite)

q Les fichiers standard et leur redirection


On peut assimiler un processus un objet abstrait qui
dispose de 3 flus d'informations :

flus en entre
0
Entre standard
(stdin)

flus en sortie

Sortie standard
2
sortie erreur standard

Signaux

Redirection de l'entre standard


- commande < nom_de_fichier
L'entre standard est redirige sur le fichier de rfrence
nom_de_fichier.
Redirection de la sortie standard
- commande > nom_de_fichier
- commande >> nom_de_fichier
(redirection sans crasement)

Redirection de la sortie en erreur standard


- commande 2> nom_de_fichier (en Bourne Shell)
- commande >& nom_de_fichier (en c-shell)

Universit de Valenciennes - ISTV

-15-

H.Bourzoufi

Cours de Systmes d'Exploitation

q Espace dadressage dun processus


Tout processus UNIX a un espace d'adressage constitu de
trois segments : code, donnes et pile :
code

Les instructions qui forment


le programme

pile

pile d'excution

donnes

donnes statiques et dynamiques


du programme

q Contexte dun processus


Le contexte dun processus comprend :
le contenu de son espace dadressage ,
les contenus des registres matriels,
les structures de donnes du noyau qui ont un rapport
avec le processus.

q Le systme effectue un changement de contexte dans


les circonstances :
- le processus se met lui-mme en sommeil
- le processus fait un exit
- le processus revient d'un appel systme au mode utilisateur
alors qu'il n'est pas le processus le plus ligible en vue d'une
excution.

Universit de Valenciennes - ISTV

-16-

H.Bourzoufi

Cours de Systmes d'Exploitation

q Etats et transitions dun processus


La dure de vie d'un processus peut tre conceptuellement
divise en 3 principaux tats qui dcrivent le processus:

Elu
2

1
3

Prt
(ligible)

Bloqu
4

L'tat Elu : le processus dispose de toutes les ressources


dont il a besoin.
L'tat bloqu : le processus dispose de toutes les
ressources dont il a besoin l'exception de l'UC.
L'tat Bloqu : le processus se met en attente dun
vnement extrieur.
Un processus Unix passe par d'autres tats intermdiaires
:
- processus s'excutant en mode noyau,
- processus s'excutant en mode utilisateur,
- processus rsidant en mmoire principale,
- processus en cours de cration
- processus en cours de terminaison (Zombie).
-...
Cration des processus dans UNIX
Universit de Valenciennes - ISTV

-17-

H.Bourzoufi

Cours de Systmes d'Exploitation

Processus init

swaper

cron

getty

getty

getty

login
Processus systme

shell

emacs

netscape

shell

Processus utilisateur

Universit de Valenciennes - ISTV

-18-

H.Bourzoufi