# French translation of manpages
# This file is distributed under the same license as the manpages-l10n package.
# Copyright © of this file:
# Christophe Blaess , 1996-2003.
# Stéphan Rafin , 2002.
# Thierry Vignaud , 1999, 2002.
# François Micaux, 2002.
# Alain Portal , 2003-2008.
# Jean-Philippe Guérard , 2005-2006.
# Jean-Luc Coulon (f5ibh) , 2006-2007.
# Julien Cristau , 2006-2007.
# Thomas Huriaux , 2006-2008.
# Nicolas François , 2006-2008.
# Florentin Duneau , 2006-2010.
# Simon Paillard , 2006.
# Denis Barbier , 2006, 2010.
# David Prévot , 2010, 2012.
# Frédéric Hantrais , 2013, 2014.
msgid ""
msgstr ""
"Project-Id-Version: manpages-l10n 4.22.0\n"
"POT-Creation-Date: 2024-06-01 06:01+0200\n"
"PO-Revision-Date: 2024-04-20 15:20+0200\n"
"Last-Translator: Jean-Pierre Giraud \n"
"Language-Team: French \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Lokalize 22.12.3\n"
#. type: TH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "makecontext"
msgstr "makecontext"
#. type: TH
#: archlinux debian-unstable opensuse-tumbleweed
#, no-wrap
msgid "2024-05-02"
msgstr "2 mai 2024"
#. type: TH
#: archlinux debian-unstable
#, no-wrap
msgid "Linux man-pages 6.8"
msgstr "Pages du manuel de Linux 6.8"
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "NAME"
msgstr "NOM"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "makecontext, swapcontext - manipulate user context"
msgstr "makecontext, swapcontext - Manipulation du contexte utilisateur"
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "LIBRARY"
msgstr "BIBLIOTHÈQUE"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "Standard C library (I, I<-lc>)"
msgstr "Bibliothèque C standard (I, I<-lc>)"
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "SYNOPSIS"
msgstr "SYNOPSIS"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "B<#include Eucontext.hE>\n"
msgstr "B<#include Eucontext.hE>\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"BIB<, void (*>IB<)(), int >IB<, ...);>\n"
"BIB<,>\n"
"B< const ucontext_t *restrict >IB<);>\n"
msgstr ""
"BIB<, void (*>IB<)(), int >IB<, ...);>\n"
"BIB<,>\n"
"B< const ucontext_t *restrict >IB<);>\n"
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "DESCRIPTION"
msgstr "DESCRIPTION"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"In a System V-like environment, one has the type I (defined in "
"Iucontext.hE> and described in B(3)) and the four "
"functions B(3), B(3), B(), and "
"B() that allow user-level context switching between multiple "
"threads of control within a process."
msgstr ""
"Dans un environnement de type System V, on dispose du type I "
"(défini dans Iucontext.hE> et décrit dansB(3)) et des "
"quatre fonctions B(3), B(2), B() et "
"B() qui permettent, au niveau utilisateur, des permutations de "
"contextes entre plusieurs threads de contrôle au sein d'un processus."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The B() function modifies the context pointed to by I "
"(which was obtained from a call to B(3)). Before invoking "
"B(), the caller must allocate a new stack for this context and "
"assign its address to Iuc_stack>, and define a successor context "
"and assign its address to Iuc_link>."
msgstr ""
"La fonction B() modifie le contexte pointé par I (qui a "
"été obtenu par un appel à B(3)). Avant d'appeler "
"B(), l'appelant doit allouer une nouvelle pile pour ce contexte "
"et l'affecter à Iuc_stack> et définir un contexte successeur et "
"l'affecter à Iuc_link>."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When this context is later activated (using B(3) or "
"B()) the function I is called, and passed the series of "
"integer (I) arguments that follow I; the caller must specify the "
"number of these arguments in I. When this function returns, the "
"successor context is activated. If the successor context pointer is NULL, "
"the thread exits."
msgstr ""
"Lorsque ce contexte est activé par la suite (avec B(3) ou "
"B()), alors la fonction I() est tout d'abord appelée avec "
"la série d'arguments de type I spécifiés à la suite de I\\ ; "
"l'appelant doit préciser le nombre de ces arguments dans I. Lorsque "
"cette fonction s'achève, le contexte successeur est activé. Lorsque le "
"pointeur sur le contexte successeur vaut NULL, le thread se termine."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The B() function saves the current context in the structure "
"pointed to by I, and then activates the context pointed to by I."
msgstr ""
"La fonction B() sauvegarde le contexte actuel dans la structure "
"pointée par I et active ensuite le contexte pointé par I."
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "RETURN VALUE"
msgstr "VALEUR RENVOYÉE"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When successful, B() does not return. (But we may return "
"later, in case I is activated, in which case it looks like "
"B() returns 0.) On error, B() returns -1 and "
"sets I to indicate the error."
msgstr ""
"En cas de succès, B() ne rend pas la main à l'appelant (on peut "
"toutefois revenir à l'appelant en cas d'activation de I\\ ; dans un "
"tel cas, B se comporte comme si elle renvoyait B<0>). En cas "
"d'erreur, B() renvoie B<-1> et définit I pour indiquer "
"l'erreur."
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "ERRORS"
msgstr "ERREURS"
#. type: TP
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "B"
msgstr "B"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "Insufficient stack space left."
msgstr "Espace de pile disponible insuffisant."
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "ATTRIBUTES"
msgstr "ATTRIBUTS"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"For an explanation of the terms used in this section, see B(7)."
msgstr ""
"Pour une explication des termes utilisés dans cette section, consulter "
"B(7)."
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Interface"
msgstr "Interface"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Attribute"
msgstr "Attribut"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Value"
msgstr "Valeur"
#. type: tbl table
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-tumbleweed
#, no-wrap
msgid ".na\n"
msgstr ".na\n"
#. type: tbl table
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-tumbleweed
#, no-wrap
msgid ".nh\n"
msgstr ".nh\n"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "B()"
msgstr "B()"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Thread safety"
msgstr "Sécurité des threads"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "MT-Safe race:ucp"
msgstr "MT-Safe race:ucp"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "B()"
msgstr "B()"
#. type: tbl table
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "MT-Safe race:oucp race:ucp"
msgstr "MT-Safe race:oucp race:ucp"
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "STANDARDS"
msgstr "STANDARDS"
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-leap-15-6 opensuse-tumbleweed
msgid "None."
msgstr "Aucun."
#. type: SH
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "HISTORY"
msgstr "HISTORIQUE"
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"glibc 2.1. SUSv2, POSIX.1-2001. Removed in POSIX.1-2008, citing "
"portability issues, and recommending that applications be rewritten to use "
"POSIX threads instead."
msgstr ""
"glibc 2.1. SUSv2, POSIX.1-2001. Supprimée dans POSIX.1-2008 à cause de "
"problèmes de portabilité, et recommande que les applications soient "
"réécrites avec des processus légers POSIX à la place."
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "NOTES"
msgstr "NOTES"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The interpretation of Iuc_stack> is just as in B(2), "
"namely, this struct contains the start and length of a memory area to be "
"used as the stack, regardless of the direction of growth of the stack. "
"Thus, it is not necessary for the user program to worry about this direction."
msgstr ""
"L'interprétation de Iuc_stack> est exactement la même que pour "
"B(2), à savoir, cette structure contient l'adresse de départ et "
"la longueur d'une zone mémoire destinée à être utilisée comme pile, et ce, "
"sans considération sur le sens d'expansion de la pile. Il n'est donc pas "
"nécessaire pour le programme utilisateur de se soucier de ce sens."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"On architectures where I and pointer types are the same size (e.g., "
"x86-32, where both types are 32 bits), you may be able to get away with "
"passing pointers as arguments to B() following I. "
"However, doing this is not guaranteed to be portable, is undefined according "
"to the standards, and won't work on architectures where pointers are larger "
"than Is. Nevertheless, starting with glibc 2.8, glibc makes some "
"changes to B(), to permit this on some 64-bit architectures (e."
"g., x86-64)."
msgstr ""
"Sur les architectures où le type I et les types « pointeur » sont de "
"même taille (par exemple, pour x86-32, leur taille est de 32\\ bits), vous "
"pouvez passer outre en passant des pointeurs comme paramètres à "
"B() suivi de I. Cependant, sachez que cela n'est pas "
"forcément portable, et indéfini selon les standards, et ne fonctionnera pas "
"sur les architectures où la taille des pointeurs est supérieure à la taille "
"des entiers I. Néanmoins, avec la glibc\\ 2.8, la glibc a effectué "
"quelques changements à B(), afin de permettre cela sur "
"certaines architectures 64\\ bits (par exemple, x86-64)."
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "EXAMPLES"
msgstr "EXEMPLES"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The example program below demonstrates the use of B(3), "
"B(), and B(). Running the program produces the "
"following output:"
msgstr ""
"Le programme d'exemple ci-dessous décrit l'utilisation de B(3), "
"B() et B(). Ce programme produit la sortie "
"suivante\\ :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"$B< ./a.out>\n"
"main: swapcontext(&uctx_main, &uctx_func2)\n"
"func2: started\n"
"func2: swapcontext(&uctx_func2, &uctx_func1)\n"
"func1: started\n"
"func1: swapcontext(&uctx_func1, &uctx_func2)\n"
"func2: returning\n"
"func1: returning\n"
"main: exiting\n"
msgstr ""
"$B< ./a.out>\n"
"main: swapcontext(&uctx_main, &uctx_func2)\n"
"func2: démarré\n"
"func2: swapcontext(&uctx_func2, &uctx_func1)\n"
"func1: démarré\n"
"func1: swapcontext(&uctx_func1, &uctx_func2)\n"
"func2: retour\n"
"func1: retour\n"
"main: quitte\n"
#. type: SS
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Program source"
msgstr "Source du programme"
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-tumbleweed
#, no-wrap
msgid ""
"#include Estdio.hE\n"
"#include Estdlib.hE\n"
"#include Eucontext.hE\n"
"\\&\n"
"static ucontext_t uctx_main, uctx_func1, uctx_func2;\n"
"\\&\n"
"#define handle_error(msg) \\e\n"
" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
"\\&\n"
"static void\n"
"func1(void)\n"
"{\n"
" printf(\"%s: started\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func1, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_func1, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: returning\\en\", __func__);\n"
"}\n"
"\\&\n"
"static void\n"
"func2(void)\n"
"{\n"
" printf(\"%s: started\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func2, &uctx_func1)\\en\", __func__);\n"
" if (swapcontext(&uctx_func2, &uctx_func1) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: returning\\en\", __func__);\n"
"}\n"
"\\&\n"
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
" char func1_stack[16384];\n"
" char func2_stack[16384];\n"
"\\&\n"
" if (getcontext(&uctx_func1) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func1.uc_stack.ss_sp = func1_stack;\n"
" uctx_func1.uc_stack.ss_size = sizeof(func1_stack);\n"
" uctx_func1.uc_link = &uctx_main;\n"
" makecontext(&uctx_func1, func1, 0);\n"
"\\&\n"
" if (getcontext(&uctx_func2) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func2.uc_stack.ss_sp = func2_stack;\n"
" uctx_func2.uc_stack.ss_size = sizeof(func2_stack);\n"
" /* Successor context is f1(), unless argc E 1 */\n"
" uctx_func2.uc_link = (argc E 1) ? NULL : &uctx_func1;\n"
" makecontext(&uctx_func2, func2, 0);\n"
"\\&\n"
" printf(\"%s: swapcontext(&uctx_main, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_main, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
"\\&\n"
" printf(\"%s: exiting\\en\", __func__);\n"
" exit(EXIT_SUCCESS);\n"
"}\n"
msgstr ""
"#include Estdio.hE\n"
"#include Estdlib.hE\n"
"#include Eucontext.hE\n"
"\\&\n"
"static ucontext_t uctx_main, uctx_func1, uctx_func2;\n"
"\\&\n"
"#define handle_error(msg) \\e\n"
" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
"\\&\n"
"static void\n"
"func1(void)\n"
"{\n"
" printf(\"%s: démarré\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func1, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_func1, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: retour\\en\", __func__);\n"
"}\n"
"\\&\n"
"static void\n"
"func2(void)\n"
"{\n"
" printf(\"%s: démarré\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func2, &uctx_func1)\\en\", __func__);\n"
" if (swapcontext(&uctx_func2, &uctx_func1) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: retour\\en\", __func__);\n"
"}\n"
"\\&\n"
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
" char func1_stack[16384];\n"
" char func2_stack[16384];\n"
"\\&\n"
" if (getcontext(&uctx_func1) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func1.uc_stack.ss_sp = func1_stack;\n"
" uctx_func1.uc_stack.ss_size = sizeof(func1_stack);\n"
" uctx_func1.uc_link = &uctx_main;\n"
" makecontext(&uctx_func1, func1, 0);\n"
"\\&\n"
" if (getcontext(&uctx_func2) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func2.uc_stack.ss_sp = func2_stack;\n"
" uctx_func2.uc_stack.ss_size = sizeof(func2_stack);\n"
" /* Le contexte successeur est f1(), unless argc E 1 */\n"
" uctx_func2.uc_link = (argc E 1) ? NULL : &uctx_func1;\n"
" makecontext(&uctx_func2, func2, 0);\n"
"\\&\n"
" printf(\"%s: swapcontext(&uctx_main, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_main, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
"\\&\n"
" printf(\"%s: quitte\\en\", __func__);\n"
" exit(EXIT_SUCCESS);\n"
"}\n"
#. SRC END
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "SEE ALSO"
msgstr "VOIR AUSSI"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"B(2), B(2), B(2), B(3), "
"B(3)"
msgstr ""
"B(2), B(2), B(2), B(3), "
"B(3)"
#. type: TH
#: debian-bookworm
#, no-wrap
msgid "2022-12-15"
msgstr "15 décembre 2022"
#. type: TH
#: debian-bookworm
#, no-wrap
msgid "Linux man-pages 6.03"
msgstr "Pages du manuel de Linux 6.03"
#. type: SH
#: debian-bookworm
#, no-wrap
msgid "VERSIONS"
msgstr "VERSIONS"
#. type: Plain text
#: debian-bookworm
msgid "B() and B() are provided since glibc 2.1."
msgstr ""
"Les fonctions B() et B() sont fournies depuis la "
"glibc\\ 2.1."
#. type: Plain text
#: debian-bookworm
msgid ""
"SUSv2, POSIX.1-2001. POSIX.1-2008 removes the specifications of "
"B() and B(), citing portability issues, and "
"recommending that applications be rewritten to use POSIX threads instead."
msgstr ""
"SUSv2, POSIX.1-2001. POSIX.1-2008 supprime les spécifications de "
"B() et B() à cause de problèmes de portabilité, et "
"recommande que les applications soient réécrites avec des processus légers "
"POSIX à la place. "
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"#include Estdio.hE\n"
"#include Estdlib.hE\n"
"#include Eucontext.hE\n"
msgstr ""
"#include Estdio.hE\n"
"#include Estdlib.hE\n"
"#include Eucontext.hE\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid "static ucontext_t uctx_main, uctx_func1, uctx_func2;\n"
msgstr "static ucontext_t uctx_main, uctx_func1, uctx_func2;\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"#define handle_error(msg) \\e\n"
" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
msgstr ""
"#define handle_error(msg) \\e\n"
" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"static void\n"
"func1(void)\n"
"{\n"
" printf(\"%s: started\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func1, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_func1, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: returning\\en\", __func__);\n"
"}\n"
msgstr ""
"static void\n"
"func1(void)\n"
"{\n"
" printf(\"%s: démarré\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func1, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_func1, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: retour\\en\", __func__);\n"
"}\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"static void\n"
"func2(void)\n"
"{\n"
" printf(\"%s: started\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func2, &uctx_func1)\\en\", __func__);\n"
" if (swapcontext(&uctx_func2, &uctx_func1) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: returning\\en\", __func__);\n"
"}\n"
msgstr ""
"static void\n"
"func2(void)\n"
"{\n"
" printf(\"%s: démarré\\en\", __func__);\n"
" printf(\"%s: swapcontext(&uctx_func2, &uctx_func1)\\en\", __func__);\n"
" if (swapcontext(&uctx_func2, &uctx_func1) == -1)\n"
" handle_error(\"swapcontext\");\n"
" printf(\"%s: retour\\en\", __func__);\n"
"}\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
" char func1_stack[16384];\n"
" char func2_stack[16384];\n"
msgstr ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
" char func1_stack[16384];\n"
" char func2_stack[16384];\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
" if (getcontext(&uctx_func1) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func1.uc_stack.ss_sp = func1_stack;\n"
" uctx_func1.uc_stack.ss_size = sizeof(func1_stack);\n"
" uctx_func1.uc_link = &uctx_main;\n"
" makecontext(&uctx_func1, func1, 0);\n"
msgstr ""
" if (getcontext(&uctx_func1) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func1.uc_stack.ss_sp = func1_stack;\n"
" uctx_func1.uc_stack.ss_size = sizeof(func1_stack);\n"
" uctx_func1.uc_link = &uctx_main;\n"
" makecontext(&uctx_func1, func1, 0);\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
" if (getcontext(&uctx_func2) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func2.uc_stack.ss_sp = func2_stack;\n"
" uctx_func2.uc_stack.ss_size = sizeof(func2_stack);\n"
" /* Successor context is f1(), unless argc E 1 */\n"
" uctx_func2.uc_link = (argc E 1) ? NULL : &uctx_func1;\n"
" makecontext(&uctx_func2, func2, 0);\n"
msgstr ""
" if (getcontext(&uctx_func2) == -1)\n"
" handle_error(\"getcontext\");\n"
" uctx_func2.uc_stack.ss_sp = func2_stack;\n"
" uctx_func2.uc_stack.ss_size = sizeof(func2_stack);\n"
" /* Le contexte successeur est f1(), sauf si argc E 1 */\n"
" uctx_func2.uc_link = (argc E 1) ? NULL : &uctx_func1;\n"
" makecontext(&uctx_func2, func2, 0);\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
" printf(\"%s: swapcontext(&uctx_main, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_main, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
msgstr ""
" printf(\"%s: swapcontext(&uctx_main, &uctx_func2)\\en\", __func__);\n"
" if (swapcontext(&uctx_main, &uctx_func2) == -1)\n"
" handle_error(\"swapcontext\");\n"
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
" printf(\"%s: exiting\\en\", __func__);\n"
" exit(EXIT_SUCCESS);\n"
"}\n"
msgstr ""
" printf(\"%s: quitte\\en\", __func__);\n"
" exit(EXIT_SUCCESS);\n"
"}\n"
#. type: TH
#: fedora-40 fedora-rawhide mageia-cauldron
#, no-wrap
msgid "2023-10-31"
msgstr "31 octobre 2023"
#. type: TH
#: fedora-40 mageia-cauldron
#, no-wrap
msgid "Linux man-pages 6.06"
msgstr "Pages du manuel de Linux 6.06"
#. type: TH
#: fedora-rawhide
#, no-wrap
msgid "Linux man-pages 6.7"
msgstr "Pages du manuel de Linux 6.7"
#. type: TH
#: opensuse-leap-15-6
#, no-wrap
msgid "2023-03-30"
msgstr "30 mars 2023"
#. type: TH
#: opensuse-leap-15-6
#, no-wrap
msgid "Linux man-pages 6.04"
msgstr "Pages du manuel de Linux 6.04"
#. type: TH
#: opensuse-tumbleweed
#, no-wrap
msgid "Linux man-pages (unreleased)"
msgstr "Pages du manuel de Linux (non publiées)"