GEF 435 Principes des systèmes dexploitation Appels de système (Tanenbaum 1.6)

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

Module Systèmes d’exploitation
Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
GEF 243B Programmation informatique appliquée
GEF 435 Principes des systèmes dexploitation Structure du logiciel dE/S Partie II (Tanenbaum & 5.3.4)
GEF 435 Principes des systèmes dexploitation Principes et structure du logiciel dE/S (Tanenbaum 5.2 & 5.3)
GEF 435 Principes des systèmes dexploitation Les systèmes dexploitation en général (Tanenbaum 1.1 et 1.3)
GESTION D’IMPRISSION SOUS WINDOWS & LINUX
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitations
GEF 243B Programmation informatique appliquée Boucles §
GEF 435 Principes des systèmes d’exploitation
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) II (Tanenbaum 2.3)
GEF 243B Programmation informatique appliquée
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) III (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Structure des systèmes dexploitation (Tanenbaum 1.7)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II.
GEF 435 Principes des systèmes dexploitation Concepts des Systèmes dexploitation (Tanenbaum 1.5)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée
Chapitre I : Systèmes d’exploitation
Introduction aux Systèmes d’Exploitation
Systèmes d’exploitation
CSI3525: Concepts des Langages de Programmation Notes # 11: Sous-Programmes ( Lire Chapitre 8 )
Principes de programmation (suite)
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Semaine #1 INF155 par Frédérick Henri.
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Concepts de base : la Classe Pour faire une comparaison simple, une classe serait a priori, une structure C avec des variables et des fonctions.
CSI3525: Concepts des Langages de Programmation Notes # 12: Implementation des Sous-Programmes ( Lire Chapitre 9 )
Système d’exploitation
Course Critique Race Condition
Larborescence ou lorganisation des dossiers et des fichiers du disque dur.
Structures des Systèmes d’Exploitation
Semaine #1 INF130 par Frédérick Henri.
CSI3531 – Labo 1 Lobservation du comportement de processus.
NOTIONS DE BASE DES SYSTÈMES TEMPS-RÉEL Sujets Concepts de processus/thread concurrents –Windows NT et la programmation temps réel Lectures: Chapitres.
Autres éléments du langage
La programmation système
Programmation Système et Réseau
CSI 3525, Implémentation des sous-programmes, page 1 Implémentation des sous-programmes L’environnement dans les langages structurés en bloc La structure.
Les RPC remote procedure call
En route vers le déploiement . . .
Applications Internet Cours 3 21 janvier 2010 Cours 3 21 janvier 2010.
PHOTOPAGER Projet Informatique et multimédia Classe Terminale S Bac 2001 Charles Duley et David Ameisen.
DECOUVERTE DE L’INFORMATIQUE
1 Session de formation Windows 8.1 Bienvenue !. Module de formation 2 2 Sujets : Gérez les applications et le multitâche Trouvez et épinglez des applications.
1 PHP 5 Notions fondamentales (niveau 1 cours #3) Formation continue – Cégep de Sainte-Foy François G Couillard.
CHAPITRE 10 Les sous-programmes 1. Sous-programme Suite d’instructions appelée de manière répétitive Par un programme Par plusieurs programmes distincts.
O PRESENTATION DE PRONOTE o COMMENT S’Y CONNECTER o DECOUVERTE DE L’INTERFACE o POINTS IMPORTANTS.
Crédits SommaireSystème & Processus Système et Applications Système, programmes & données Définition Système & UtilisateursSystème et Interface CULTURE.
Ce logiciel vous permettra de générer les relevés 24 que vous avez à émettre. Ce logiciel permet l’entrée, la validation des données, l’impression des.
Gestion des Tâches Les Processus. Un système multitâches La carte mère comporte Le Processeur (calcul et attente) Les jeux de composants spécialisés (entrées-sorties.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – LES PROCESSUS SOUS UNIX.
Transcription de la présentation:

GEF 435 Principes des systèmes dexploitation Appels de système (Tanenbaum 1.6)

Revue Donnez un exemple de comment un interblocage peut se produire. Dans quelle structure est-ce que le SE sauvegarde linformation dun processus?

Synopsis Appels de système Quelques appels de système spécifiques fork( ) execve( ) link( ) *NIX à Windows des comparaisons

Appels de système Les appels de système sont linterface entre le SE et les programmes des utilisateurs Les librairies de procédures sont disponibles pour permettre aux langages à haut niveau de faire des appels de système Exemple: stdio.h rend disponible les fonctions nécessaires pour ouvrir, fermer et manipuler les fichiers. DOS et UNIX ont la librairie pour stdio mais linteraction est différente

Appels de système Que ce passe t-il durant un appel de fonction?

Appels de système Comment est-ce quun appel de système est différent?

Appels de système Un espace pour vos notes…

Appels de système spécifiques Une brève description de certains appels de système dans un environnement *NIX aide à comprendre les services offerts par le SE Actuellement une description de certaines fonctions des librairies, mais en général, ces fonctions font des appels de système pour accomplir leurs tâches

Lappel fork( ) pid = fork(); /*Exemple dappel de sys*/ En Unix la seule façon de générer un nouveau processus est avec fork() fork() crée un duplicata exact du processus parent au point de lappel incluant les descripteurs de fichiers, létat des registres, la pile, etc. … Le texte du programme est partagé La valeur de retour est différente pour les deux processus: Parent reçoit le PID de lenfant Enfant reçoit 0

Appel fork( ) Si tout entre le parent et lenfant est pareil comment est-ce que le parent et lenfant font un travail différent? while (TRUE) /* repète à jamais */ { type_prompt(); /* montre le prompt */ read_command(command, parameters) /* Entrée du terminal */ if (fork() != 0) /* fork un processus enfant */ waitpid( -1, &status, 0); /* Attend pour lenfant de finir */ else execve (command, parameters, 0); /* exécute commande */ } Code du parent Code de lenfant

Appel execve( ) Maintenant que le processus enfant est démarré nous voulons lui faire exécuter quelque chose de différent du parent s=execve(nom, argv, environp) Remplace limage du processus courrant avec un programme spécifié par largument: nom argv devrait être familier (lab1) environp est un tableau dinformation de lenvironnement tel quun répertoire de travail ou home, etc.

Appel link( ) link( ) est intéressant parce quil montre comment les fichiers sont entreposés dans les systèmes Unix Est-ce que les fichiers sont localisés physiquement sur le disque en terme de fichiers et répertoires? Non Les fichiers sont seulement des groupements de données qui sont reliées Linformation sur chaque fichier est gardée dans une grande table Chaque fichier a un numéro appelé un i-node Cette table mappe ce i-node à une location physique sur le disque

Appel link( ) Quest-ce quun répertoire? *NIX: Les répertoires sont des fichiers avec une liste de (i-node, string) Déplacer des fichiers demande simplement dajouter/enlever les i-nodes de ces fichiers Comment fonctionne link() ?

Appel link( ) s = link(nom1, nom2) nom1 est le fichier auquel on veut se lier nom2 est le nouveau fichier que lon veut créer Exemple: link(/usr/jim/memo, /usr/ast/note); AvantAprès

Sommaire des appels de système

*NIX vs Windows Windows donne une interface plus loin du SE connue comme: Win32 API Il y a des milliers dappels API Plusieurs appels API font des appels de système mais dautres opèrent entièrement dans lespace utilisateur…impossible de les séparer. Certains de ces appels peuvent varier entre les versions de Windows Windows a des appels de système différents: certains sont supportés différemment; dautres ne sont pas supportés CreateProcess() est fork() + execve() Pas de link en Windows

Quiz Time! Questions?