Exécuter une fonction en parallèle Utilisation de plusieurs fonctions en parallèles pour obtenir un résultat Accès à des ressources simultanément.

Slides:



Advertisements
Présentations similaires
Introduction Langage très répandu Noyau Linux VLC … Des avantages indéniables mais aussi des contraintes ! Ceci nest quun rapide tour.
Advertisements

Erratum C Surcharge For(int x=0; … 2.
Rappels C.
Introduction au langage C
Responsables : Joël Falcou et Jean-Thierry Lapresté
TP 7.1 synchronized et join Écrire un programme Java qui crée 1000 threads et maintient un compteur nb du nombre de threads créés jusque-là. Le thread.
(Classes prédéfinies – API Java)
Conception et programmation Programmation Parallèle
Chapitre 3 Coopération et synchronisation par variables partagées
Exécutif Temps réel. Limitation des système classiques Rappels Mise en œuvre lourde des communications entre processus Problème de prédictibilité avec.
la programmation en langage C
Présentation Création
Introduction aux systèmes temps réel Ce cours sadresse aux informaticiens novices en matière de temps réel.
Servlet JAVA.
Exercice 1 1 (père) et 1 (fils) 1 (père) et 0 (fils)
Jc/md/lp-01/05Trains_presentation1 Threads et Synchronisation Application train Présentation.
Cours Visual Basic pour Application
Programmation de cartes graphiques
Athapascan-1 Interface C++ de programmation parallèle
Les Systèmes d’Exploitation
Synchronisation et communication entre processus
1 Threads et Lightweight Processes Chapitre 5 En français on utilise parfois flots ou fils pour threads. Votre manuel préfère le mot anglais thread : terminologie.
Système d’exploitation
Approche mémoire partagée Threads – Paradigme de lapproche – Objets exécutés par les processeurs threads vs processus, – un thread possède : Ses registres,
5.1 URDL22005 Systèmes dexploitation Threads Vue dEnsemble Modèles de Multithreading Problèmes des Threads Pthreads Threads Windows XP Threads Linux Threads.
Bases de la programmation en C++
Déroulé de formation B1V
Franck Cappello CNRS, LRI, Université Paris-sud
Module 51 Module 5 - Synchronisation de Processus (ou threads, ou fils ou tâches) Module 5 - Synchronisation de Processus (ou threads, ou fils ou tâches)
Programmation concurrente
1 Module 3 - Fils (Threads) Lecture: Chapitre 4 Objectif: Comprendre le concept de fils et sa relation avec le processus Comprendre le concept de fils.
Chapitre 6 (Silberchatz)
Un langage de programmation hybride
1. 2 Toolkits Il existe 4 principales boites à outils (toolkits) graphiques : –Xt / Motif –Gtk –Windows –Qt Seul certaines fonctionnent sur toutes les.
ÉLÉMENTS DE BASE UNIX.
Système dexploitation: Principe IFT6800 – E 2008 Pierre Poulin.
Structures de données IFT-10541
Formation C++. Hello World ! #include /* Commentaire sur plusieurs lignes */ int main() { //Affiche hello world std::cout
La librairie assert.h.
Structures de données IFT Abder Alikacem Semaine 2 Tests sur les pointeurs Département d’informatique et de génie logiciel Édition Janvier 2009.
Systèmes d’exploitation
Programmer en langage c
Introduction aux systèmes d’exploitation
Programmation Système et Réseau (sous Linux)
SYSTEMES D’EXPLOITATION
Gestion de processus Corrigé TD 1 EFREI I
Introduction à la programmation objet avec java
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.
Argc et argv Utilisation des paramètres de la ligne de commande.
SYSTÈME D’EXPLOITATION I
La programmation système
Programmation Système et Réseau
Novembre 2014J.Callot L.Piedfort1 TP1 Enoncé. novembre 2014J.Callot L.Piedfort2 Objectifs Générer un environnement de travail avec Code Warrior Prendre.
NOTIONS DE BASE DES SYSTÈMES TEMPS-RÉEL Sujets Concepts de processus/thread concurrents –Windows NT et la programmation temps réel –Synchronisation et.
Pthread Ordonnancement. #define _MULTI_THREADED #include #ifndef _CHECK_H #define _CHECK_H /* headers used by a majority of the example program */ #include.
Introduction à la programmation objet avec java
Les Threads ou les variables de Thread en C sous UNIX Nicolas ANTIGNY Ingénieurs 2000.
Système d’exploitation
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
TER LOGO Model a copier coller a chaque nouvelle diapositive.
Présentation StateFlow Application Grafcet norme 2002
1 CEC A.-CHAVANNE Sites Web et bases de données. 2 UNE BASE DE DONNÉES : POURQUOI ? Manipulation de grandes quantités d’information – représentation des.
Capocasale & Droz. Exécuter une fonction en parallèle Utilisation de plusieurs fonctions en parallèles pour obtenir un résultat Accès à des ressources.
Java Réalisé par: Mouna POKORA. PLAN: Définition : Historique: Caractéristiques: un langage orienté objet: un langage interprété : un langage portable:
ARCHITECTURE MATERIELLE D’UN SYSTEME A MICROPROCESSEUR
1 UNIX AVANCE Yves PAGNOTTE – Janvier – LES PROCESSUS SOUS UNIX.
1 Programmation en C++ IO en C++/SL. 2 Sortie à l’écran Exemple: #include int main () { std::cout
1 Bonnes Pratiques ● Indentation ● Présentation ● Initialisation des variables ● Conditions ● Gestion d'erreurs ● Conventions.
Programmation en C++ IO en C++/SL
TEST. API OK CONNECTION OK.
Transcription de la présentation:

Exécuter une fonction en parallèle Utilisation de plusieurs fonctions en parallèles pour obtenir un résultat Accès à des ressources simultanément

Portable Operating System Interface UNIX Famille de standardsStandardisation des API des logiciels pour UNIXSpécification d’interfaces utilisateurs et logiciellesDivision en trois partie Les API Les commandes et utilitaires Test de conformité Plusieurs versions (POSIX 1c)

PthreadsSous-standard de la norme POSIXDescription d’une interface de programmation Disponible nativement sur les système UNIX Langage CDisposition de fonctions Création / Destruction Ordonnancement de tâches Synchronisation Gestion de signaux Man pthread sur google Et les threads

Comment utiliser pthreads -lpthread-D_REENTRANT#include, #include #include void *fct(void* input) { std::string str = static_cast (input); std::cout<< str <<std::endl; } int main(void) { std::string str = "Hello world !"; pthread_t t1 ; pthread_create(&t1, 0, fct, (void*)&str); pthread_join(t1, 0); return 0; } g++ main.cpp –lpthread –D_REENTRANT –o test

Gestion par le système

Thread 1| = 30 | = 60 | = 14 | Thread 2| = 12 | = 5 | = 3 | Thread 3| = 8 | = 9 | Thread 4| = 10 | = 13 |

Système de verrouAccès en lecture et/ou en écriture aux mêmes variables Zone d'exclusion mutuelle (mutex)

Sémaphores (zone contrôlée)

Addition de deux tableauxCalculer PITrouver des nombres premiers

Les philosophes