Groups | Search | Server Info | Login | Register


Groups > fr.comp.algorithmes > #579

Re: Traduction pour "concurrency, concurrent programming"

Date 2015-08-09 10:04 +0200
From Laurent Bloch <lb@laurentbloch.org>
Newsgroups fr.comp.lang.ada, fr.comp.algorithmes
Subject Re: Traduction pour "concurrency, concurrent programming"
Message-ID <20150809100420.2ce98018@beatrix> (permalink)
References <20150805190632.7a2cf248@beatrix> <20150806044303.44f31fc6@free.fr>
Organization Guest of ProXad - France

Cross-posted to 2 groups.

Show all headers | View raw


Merci ! Je me résoudrai donc à « concurrent », bien qu'il présente
l'inconvénient de véhiculer des connotations ignorées de son
homonyme anglais.

Cordialement !

Le jeudi 06 août 2015 Yliur a écrit ceci :

> Le Wed, 5 Aug 2015 19:06:32 +0200
> Laurent Bloch <lb@laurentbloch.org> a écrit :
> 
> > Bonjour,
> > 
> > Voici une question qui me semble adaptée aux groupes auxquels
> > je l'adresse : comment traduire en français "concurrency, concurrent
> > programming" ? Quelle distinction avec parallélisme, 
> > multiprogrammation, multi-tâche ?
> > 
> > Merci de toute suggestion !
> 
> Étant donné que les définitions ne sont pas unifiées, ni en anglais ni
> en français, pas évident de fixer des traductions ou des termes.
> 
> Quelques éléments en vrac :
> 
>     - Multi-tâches est un terme que j'ai surtout vu employé dans le
>       cadre des systèmes d'exploitation, plutôt pour décrire le fait
>       qu'ils savent gérer ces tâches que pour traiter la manière dont
>       elles-mêmes sont programmées.
> 
>     - D'un autre côté "tâche" peut décrire assez bien des "trucs à
>       réaliser" par un programme (issu d'un découpage : les tâches
>       pouvant être exécutées en séquence, en parallèle, ...). Mais je
>       ne me souviens pas avoir vu le terme "multi-tâches" pour un
>       programme parallélisé.
> 
>     - Je me souviens d'un article qui choisissait une distinction
>       intéressante entre concurrence (le fait que deux tâches aient
>       besoin d'accéder aux mêmes ressources [processeur exclu ici]) et
>       parallélisme (le fait d'exécuter des bouts de code en parallèle).
>       Ici on imagine un programme découpé en "tâches", qui peuvent être
>       concurrentes ou non (deux tâches peuvent avoir besoin d'accéder à
>       une structure de données commune par exemple, ou à un fichier
>       commun...). Cette notion de concurrence était indépendante du
>       fait que les tâches soient exécutées ou non en parallèle. C'est
>       juste un découpage conceptuel du programme. Les tâches peuvent
>       être exécutées les unes à la suite des autres (par exemple une
>       fonction appelle les fonctions correspondant aux tâches, ou
>       simplement le code est écrit tout à la suite dans une fonction
>       unique) ou en parallèle (dans plusieurs fils d'exécution
>       séparés). Dans le cas d'exécution parallèle de tâches
>       concurrentes, des mécanismes sont nécessaires pour éviter les
>       ennuis.
> 
>     - On pourrait aussi dire que le temps du processeur est une
>       ressource partagée et que s'il y a plusieurs tâches elles sont
>       potentiellement concurrentes par rapport à cette ressource. Le
>       parallélisme serait alors le fait d'exécuter des tâches
>       réellement en parallèle : plutôt le fait d'avoir plusieurs cœurs
>       et/ou processeurs et de les utiliser que le simple fait d'avoir
>       plusieurs fils d'exécution. Une distinction peut-être moins
>       intéressante, si on s'intéresse surtout aux problèmes
>       d'interactions entre les tâches. D'autant que du coup elles sont
>       toutes concurrentes.
> 
>     - Il me semble aussi avoir lu un article qui parlait de
>       programmation concurrente et concourante, la première traitant de
>       tâches qui ont des problèmes de concurrences d'accès à certaines
>       ressources, la seconde le simple fait que l'exécution ait lieu en
>       même temps (ou potentiellement en même temps, donc utiliser des
>       fils d'exécution suffit pour que la programmation soit
>       concourante dans cette définition me semble-t-il, peu importe
>       qu'il y ait un ou plusieurs cœurs pour exécuter les tâches
>       réellement en parallèle).
> 
> D'autres définitions ici (programmation concurrente "disjointe" ou
> non) :
>     https://fr.wikipedia.org/wiki/Programmation_concurrente
> 
> Donc pour répondre plus précisément à ta question : "concurrence" et
> "programmation concurrente" semblent adaptés. Avec distinction entre la
> concurrence et le parallélisme si la concurrence représente le fait que
> des tâches aient des conflits potentiels d'accès à des ressources
> (indépendamment du fait qu'on les exécute réellement en parallèle ou
> non) et le parallélisme représente le fait d'exécuter des tâches en
> parallèle ou potentiellement en parallèle (que les tâches soient
> concurrentes ou non).
> 


-- 
Laurent Bloch -- Université Paris-Dauphine -- +33 6 03 12 16 97

Back to fr.comp.algorithmes | Previous | NextPrevious in thread | Find similar


Thread

Traduction pour "concurrency, concurrent programming" Laurent Bloch <lb@laurentbloch.org> - 2015-08-05 19:06 +0200
  Re: Traduction pour "concurrency, concurrent programming" Yliur <yliur@free.fr> - 2015-08-06 04:43 +0200
    Re: Traduction pour "concurrency, concurrent programming" Laurent Bloch <lb@laurentbloch.org> - 2015-08-09 10:04 +0200

csiph-web