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
Introduction (2 (2)
Structure dun OS
2 systmes
Systme dexploitation (OS)
Gestion des ressources
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
OS rseau (1 (1)
Fonctionnalits
Accs au rseau
Gestion des utilisateurs
Comptes utilisateurs Gestion de la communication Gestion des privilges
OS rseau (2 (2)
Surveillance du rseau
Scurit Performances
Qualit de Service (QoS)
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
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
Linux libres
Mandrake Red Hat Suse Ubuntu
Systmes et Rseaux Matrise Info 09/10
Y. SLIMANI, FST Tunis
10
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
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
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 nomms
Communication laide de fichiers
Files de messages
Communication par flots de donnes
Systmes et Rseaux Matrise Info 09/10
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
16
Programmation (5 (5)
Signaux
Evnement asynchrone destin un ou plusieurs processus
Equivalent une interruption
17
Programmation (6 (6)
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
20
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
23
Tubes nomms
Communication travers des fichiers Tubes publics Nexigent pas de liens de parent
Systmes et Rseaux Matrise Info 09/10
24
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
25
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
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
29
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
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
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
36
Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10
37
Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10
38
Source: S. Krakowiak
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
40
Source: S. Krakowiak
Systmes et Rseaux Matrise Info 09/10
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
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)
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
45
46
47
48
49
50
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