Vous êtes sur la page 1sur 52

Cours de Systme et Rseaux

Matrise Informatique 4me anne Partie I : Concepts de base

Yahya SLIMANI
Dept Informatique Facult des Sciences de Tunis Yahya.slimani@fst.rnu.tn
Systmes et Rseaux Matrise Info 09/10 Y. SLIMANI, FST Tunis 1

Introduction (1 (1)
Rappel sur les OS
2 catgories
OS pour machine isole
Ressources ddies totalement lapplication en cours dexcution

OS pour machines en rseau


Ressources accessibles par plusieurs utilisateurs Rpartir quitablement les ressources Assurer la communication
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

Introduction (2 (2)
Structure dun OS
2 systmes
Systme dexploitation (OS)
Gestion des ressources

Systme de gestion du rseau


Gestion de la communication

2 systmes diffrents mais qui doivent tre compatibles


Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

Introduction (3 (3)
Systme mixte
Principe des systmes Unix
Fonctionnalits de gestion des ressources et dun rseau incluses dans le mme systme dexploitation

Peut tre utilis dans le cas dune machine isole ou dans le cas dun rseau de machines

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

OS rseau (1 (1)
Fonctionnalits
Accs au rseau
Gestion des utilisateurs
Comptes utilisateurs Gestion de la communication Gestion des privilges

Partage des ressources


Dfinir le degr de partage des ressources physiques et logiques
Imprimantes, Disque, Fichier, Rpertoire, etc.
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

OS rseau (2 (2)
Surveillance du rseau
Scurit Performances
Qualit de Service (QoS)

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

OS rseau (3 (3)
Composants
Architecture physique
Au minimum deux machines
Client (et Serveur) Serveur (et Client)

Fonctionnalits
Installes sur les deux types de machine
Partie Client Partie Serveur
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

OS rseau (4 (4)
Principe gnral de fonctionnement
Soumission dune requte par le client LOS du client la soumet au systme rseau (cot client) pour lacheminer vers le serveur Le systme rseau (cot serveur) reoit la requte du client et la soumet lOS cot serveur Dclenchement de lapplication associe la requte
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

OS rseau (5 (5)
LOS (cot serveur) soumet la rponse au systme rseau (cot serveur) pour lacheminer vers le client Rception de la rponse du cot client et transmission lapplication cliente

Fonctionnement Synchrone
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

Exemples dOS rseaux NOSNOS- (1)


OS pour machines INTEL
Unix propritaires
Unix/SCO de Santa Cruz Operation SOLARIS de SUN (systme UNIX)

Linux libres
Mandrake Red Hat Suse Ubuntu
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

10

Exemples dOS rseaux NOSNOS- (2)


BSD libres
NetBSD FreeBSD OpenBSD

OS de la compagnie Novell
NetWare

Systmes de Microsoft
Windows NT, Windows NT Server, Windows NT Workstation, Windows 2000, Windows XP, Vista,
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

11

Exemples dOS rseaux NOSNOS- (3)


Systmes Apple
MAC OS n (n=numro de version)

Systmes divers
OS/2 dIBM LAN Manager dIBM

Environnements
P2P, C/S
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

12

Programmation (1 (1)
Aspects de programmation
2 aspects prendre en compte
Programmation classique
Fonctions classiques

Programmation de la partie communication


Fonctionnalits spcifiques Dpend fortement du type de plateforme Machine isole, Machine rseau
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

13

Programmation (2 (2)
Programmation locale
Cas du systme Unix
Processus dans la mme machine Communication Inter-Processus
Appele aussi IPC (Inter-Process Communications) Aspect fondamental de la programmation des systmes Synchronisation et communication entre processus
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

14

Programmation (3 (3)
Mcanismes de communication
Signaux
Communication asynchrone

Tubes non nomms


Communication travers la MC

Tubes nomms
Communication laide de fichiers

Files de messages
Communication par flots de donnes
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

15

Programmation (4 (4)
Mmoire partage et Smaphores
Grer les accs un espace partag

Sockets
Mcanisme utilis aussi bien en local qu distance Canal virtuel entre deux processus

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

16

Programmation (5 (5)
Signaux
Evnement asynchrone destin un ou plusieurs processus
Equivalent une interruption

Emis par un processus ou par lOS Mcanisme de bas niveau Utilit


Contrler lexcution dun ensemble de processus (ex: le Shell) Traiter des vnements lis au temps
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

17

Programmation (6 (6)

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

18

Programmation (7 (7)
Caractristiques des signaux
Existence de plusieurs types de signaux Signal identifi par un nom symbolique et un numro A chaque signal est associ un programme de traitement par dfaut Possibilit dignorer un signal Le programme associ un signal peut tre chang (sauf pour 2 cas) Un signal pourra tre bloqu Pas de mmorisation des signaux
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

19

Programmation (8 (8)
Dclenchement des signaux
Retransmis par le noyau division par zro, overflow, instruction interdite, Envoys depuis le clavier par l'utilisateur Touches : <CTRL>Z, <CTRL>C, <CTRL>X, ... Emis par la commande kill A travers une commande shell A partir dune fonction C, en appelant la commande kill

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

20

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

21

Programmation (9 (9)
Communication par tube non nomms ou anonymes
Uniquement entre 2 processus de la mme famille
Anctre commun Contrainte de programmation

Fonctions de manipulation
Cration : Fonction pipe() Lecture : Fonction read Ecriture : Fonction write
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

22

Programmation (10 (10) )


Tube
Canal unidirectionnel Support par la mmoire centrale Fonctionne en mode flot de caractres Emission et rception de caractres Ecriture et lecture sont atomiques Effets sur les processus Blocage, Terminaison Dure de vie limite Disparat lorsque le dernier processus, qui le rfrencie, se termine Tube priv
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

23

Programmation (11 (11) )


Communication par tubes nomms
Remdier la contrainte des tubes non nomms
Hirarchie de processus Consquences sur ltat des processus Support physique Mmoire centrale (Volatile)

Tubes nomms
Communication travers des fichiers Tubes publics Nexigent pas de liens de parent
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

24

Programmation (12 (12) )


Fonctions
Cration : mknod() ou mkfifo() Ouverture : open Utilisation : read(), write() Fermeture : close

Synchronisation
Ouverture bloquante (RDV) ou non Paramtres de la fonction mknod() Effets sur ltat des processus qui utilisent le tube
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

25

Programmation (13 (13) )


Programmation par socket
Mcanismes prcdents
Mcanismes de trs bas niveau (OS) Difficiles programmer pour des applications de grande dimension Codage en dur Difficile coder Difficile dboguer Difficile maintenir

Utiliser des mcanismes de haut niveau


Exemple: Sockets, Objet, Web services
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

26

Sockets (1 (1)
Rseau vs Utilisateur
Schma Client/Serveur
Mme machine Machines diffrentes
Client demande un service fournit par un serveur sur une autre machine Identifier le service: http://... Conversion en une adresse IP interprtable par les protocoles du rseau (DNS)
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

27

Sockets (2 (2)
Serveur peut implmenter plusieurs services Adresse IP ncessaire mais non suffisante Identifier le service au moyen dun port (permet dinvoquer un processus spcifique)

Port de communication
Cod sur 16 bits Numros rservs : 0..1023
7 : echo 25 : mail 80 : serveur web
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

28

Source: S. Krakowiak

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

29

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

30

Sockets (3 (3)
Introduction
Utilit des Sockets
Interface pour faciliter lutilisation des protocoles de transport TCP et UDP Cre un lien entre une connexion et un port
Permet de dsigner une connexion (cot client ou cot serveur) en lassociant un numro de port Communication travers cette connexion
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

31

Sockets (4 (4)
Sockets et rseau
Interface daccs
Dun hte vers les interfaces de transport TCP et UDP

TCP (mode connect)


Protocole orient connexion Echange entre les deux entits relies par la connexion Flot doctets Contrle sur la transmission Envoi daccuss de rception
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

32

Sockets (5 (5)
UDP (mode non connect)
Protocole non orient connexion Messages changs individuellement Envoi sans prvenir Rception sans prvenir Donnes envoys sous forme de bloc Datagramme

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

33

Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

34

Sockets (6 (6)
Sockets cot serveur
Serveur
Fournit un ou plusieurs services des clients
Lancement du serveur et attente de demandes (phase dcoute) Traite les demandes de service Rend un rsultat (ventuellement) Attente et traitement sont spars Possibilit dattendre de nouvelles requtes pendant le traitement des courantes
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

35

Source: S. Krakowiak

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

36

Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

37

Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

38

Source: S. Krakowiak

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

39

Sockets (7 (7)
Sockets cot client
2 tapes sont ncessaires Hypothses
Adresse du serveur connue Connaissance du numro de port dune socket cot serveur

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

40

Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

41

Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

42

Sockets (8 (8)
Communication avec les sockets
Etablissement dune connexion Client et serveur disposent dun descripteur sur leurs connexions
Descripteur identique celui dun fichier

Utilisation avec read et write Fermeture avec close


Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

43

Protocoles (1 (1)
Protocoles de la couche contrle
UDP
User Data Protocol Entte minimale Livraison des donnes non fiable Mode non connect Unit de transfert
Message (bloc ou datagramme)

Pas de regroupement ou de dcoupage de messages


Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

44

Protocoles (2 (2)
TCP
Transmission Control Protocol Ajout dinformations de contrle dans le paquet transmettre Livraison fiable des donnes Ncessit dtablir une connexion avant la transmission Unit de transfert
Flot doctets non structurs
Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

45

Communication TCP (1 (1)


Source: Stpahne Vialle

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

46

Communication TCP (2 (2)


Etapes de connexion
Serveur et client ouvrent une socket Serveur nomme la socket
Il lattache un de ses ports

Le client nest pas oblig de la nommer


Attache automatiquement un port lors de la connexion
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

47

Communication TCP (3 (3)


Serveur attend des demandes de connexion Client connecte sa socket au serveur et sur un de ses ports Serveur dtecte la demande de connexion Ouverture automatique dune nouvelle socket
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

48

Communication TCP (4 (4)


Serveur cre un processus pour dialoguer avec le client Nouveau processus continue le dialogue sur la nouvelle socket Serveur peut attendre, en parallle, de nouvelles demandes Fermeture obligatoire de toutes les sockets
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

49

Mode TCP Source: cours@urec.cnrs.fr

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

50

Mode UDP Source: cours@urec.cnrs.fr

Systmes et Rseaux Matrise Info 09/10

Y. SLIMANI, FST Tunis

51

Bibliothques
Windows
winsock.lib winsock.h winsock.dll

Unix
stdio.h sys/types.h sys/socket.h netinet/in.h netdb.h
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis

52