perkamon - en to fr translation catalogue (40 entries)

note: type: TH
en: 2017-09-15
fr: 15 septembre 2017

note: type: TH
en: Linux Programmer's Manual
fr: Manuel du programmeur Linux

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: process_vm_readv, process_vm_writev - transfer data between process address spaces
fr: process_vm_readv, process_vm_writev - Transférer les données entre les espaces d'adressage de processus

note: type: Plain text
en: Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):
fr: Exigences de macros de test de fonctionnalités pour la glibc (consultez B<feature_test_macros>(7)) :

note: type: Plain text
en: These system calls transfer data between the address space of the calling process ("the local process") and the process identified by I<pid> ("the remote process").  The data moves directly between the address spaces of the two processes, without passing through kernel space.
fr: Ces appels système transfèrent des données entre l'espace d'adressage du processus d'appel (« le processus local ») et du processus identifié par I<pid> (« le processus distant »). Les données se déplacent directement entre les espaces d'adressage des deux processus, sans passer par l'espace du noyau.

note: type: Plain text
en: The B<process_vm_readv>()  system call transfers data from the remote process to the local process.  The data to be transferred is identified by I<remote_iov> and I<riovcnt>: I<remote_iov> is a pointer to an array describing address ranges in the process I<pid>, and I<riovcnt> specifies the number of elements in I<remote_iov>.  The data is transferred to the locations specified by I<local_iov> and I<liovcnt>: I<local_iov> is a pointer to an array describing address ranges in the calling process, and I<liovcnt> specifies the number of elements in I<local_iov>.
fr: L'appel système B<process_vm_readv>() transfère les données du processus distant au processus local. Les données à transférer sont identifiées par I<remote_iov> et I<riovcnt> : I<remote_iov> est un pointeur vers un tableau décrivant les intervalles d'adresses dans le processus I<pid> et I<riovcnt> indique le nombre d'éléments dans I<remote_iov>. Les données sont transférées aux endroits indiqués par I<local_iov> et I<liovcnt> : I<local_iov> est un pointeur vers un tableau décrivant les intervalles d'adresses dans le processus appelant et I<liovcnt> indique le nombre d'éléments dans I<local_iov>.

note: type: Plain text
en: The B<process_vm_writev>()  system call is the converse of B<process_vm_readv>()\(emit transfers data from the local process to the remote process.  Other than the direction of the transfer, the arguments I<liovcnt>, I<local_iov>, I<riovcnt>, and I<remote_iov> have the same meaning as for B<process_vm_readv>().
fr: L'appel système B<process_vm_writev>() fait l'inverse de B<process_vm_readv>() \(em il transfère les données du processus local au processus distant. À part la direction du transfert, les arguments I<liovcnt>, I<local_iov>, I<riovcnt> et I<remote_iov> ont la même signification qu'avec B<process_vm_readv>().

note: type: Plain text
en: The I<local_iov> and I<remote_iov> arguments point to an array of I<iovec> structures, defined in I<E<lt>sys/uio.hE<gt>> as:
fr: Les arguments I<local_iov> et I<remote_iov> pointent vers un tableau de structures I<iovec>, définies dans I<E<lt>sys/uio.hE<gt>> :

note: type: Plain text
en: struct iovec {
        void  *iov_base;    /* Starting address */
        size_t iov_len;     /* Number of bytes to transfer */
    };
fr: struct iovec {
        void *iov_base;    /* Adresse de début */
        size_t iov_len;    /* Nombre d'octets à transférer */
    };

note: type: Plain text
en: Buffers are processed in array order.  This means that B<process_vm_readv>()  completely fills I<local_iov[0]> before proceeding to I<local_iov[1]>, and so on.  Likewise, I<remote_iov[0]> is completely read before proceeding to I<remote_iov[1]>, and so on.
fr: Les tampons sont traités dans l'ordre du tableau. Cela signifie que B<process_vm_readv>() remplit complètement I<local_iov[0]> avant de passer à I<local_iov[1]>, etc. De même, I<remote_iov[0]> est complètement lu avant de passer à I<remote_iov[1]>, etc.

note: type: Plain text
en: Similarly, B<process_vm_writev>()  writes out the entire contents of I<local_iov[0]> before proceeding to I<local_iov[1]>, and it completely fills I<remote_iov[0]> before proceeding to I<remote_iov[1]>.
fr: De même, B<process_vm_writev>() écrit tout le contenu de I<local_iov[0]> avant de passer à I<local_iov[1]>, et il remplit complètement I<remote_iov[0]> avant de passer à I<remote_iov[1]>.

note: type: Plain text
en: The lengths of I<remote_iov[i].iov_len> and I<local_iov[i].iov_len> do not have to be the same.  Thus, it is possible to split a single local buffer into multiple remote buffers, or vice versa.
fr: Les longueurs de I<remote_iov[i].iov_len> et I<local_iov[i].iov_len> n'ont pas besoin d'être identiques. Ainsi, il est possible de séparer un seul tampon local en plusieurs tampons distants, ou vice versa.

note: type: Plain text
en: The I<flags> argument is currently unused and must be set to 0.
fr: L'argument I<flags> n'est pour l'instant pas utilisé et doit être configuré à 0.

note: In time, glibc might provide a wrapper that works around this limit, as is done for readv()/writev() type: Plain text
en: The values specified in the I<liovcnt> and I<riovcnt> arguments must be less than or equal to B<IOV_MAX> (defined in I<E<lt>limits.hE<gt>> or accessible via the call I<sysconf(_SC_IOV_MAX)>).
fr: Les valeurs indiquées dans les arguments I<liovcnt> et I<riovcnt> doivent être inférieures à B<IOV_MAX> (définie dans I<E<lt>limits.hE<gt>> ou accessibles par l'appel I<sysconf(_SC_IOV_MAX)>).

note: type: Plain text
en: The count arguments and I<local_iov> are checked before doing any transfers.  If the counts are too big, or I<local_iov> is invalid, or the addresses refer to regions that are inaccessible to the local process, none of the vectors will be processed and an error will be returned immediately.
fr: Les arguments de décompte et I<local_iov> sont vérifiés avant tout transfert. Si le décompte est trop grand, que I<local_iov> n'est pas valable ou que les adresses font référence à des régions inaccessibles au processus local, aucun des vecteurs ne sera traité et une erreur sera immédiatement renvoyée.

note: type: SH
en: RETURN VALUE
fr: VALEUR DE RETOUR

note: type: Plain text
en: On success, B<process_vm_readv>()  returns the number of bytes read and B<process_vm_writev>()  returns the number of bytes written.  This return value may be less than the total number of requested bytes, if a partial read/write occurred.  (Partial transfers apply at the granularity of I<iovec> elements.  These system calls won't perform a partial transfer that splits a single I<iovec> element.)  The caller should check the return value to determine whether a partial read/write occurred.
fr: En cas de réussite, B<process_vm_readv>() renvoie le nombre d'octets lus et B<process_vm_writev>() renvoie le nombre d'octets écrits. Cette valeur renvoyée pourrait être inférieure au nombre total d'octets demandés si une lecture ou écriture partielle est survenue (les transferts partiels s'appliquent à la granularité des éléments I<iovec>. Ces appels systèmes ne réaliseront pas de transfert partiel qui sépare un seul élément I<iovec>). L'appelant devrait vérifier la valeur renvoyée pour déterminer si une lecture ou écriture partielle est survenue.

note: type: Plain text
en: On error, -1 is returned and I<errno> is set appropriately.
fr: En cas d'erreur, -1 est renvoyé et I<errno> contient le code d'erreur.

note: type: SH
en: ERRORS
fr: ERREURS

note: type: Plain text
en: The memory described by I<local_iov> is outside the caller's accessible address space.
fr: La mémoire décrite par I<local_iov> est en dehors de l'espace d'adressage de l'appelant.

note: type: Plain text
en: The memory described by I<remote_iov> is outside the accessible address space of the process I<pid>.
fr: La mémoire décrite par I<remote_iov> est en dehors de l'espace d'adressage du processus I<pid>.

note: type: Plain text
en: The sum of the I<iov_len> values of either I<local_iov> or I<remote_iov> overflows a I<ssize_t> value.
fr: La somme des valeurs I<iov_len> de I<local_iov> ou I<remote_iov> dépasse une valeur I<ssize_t>.

note: type: Plain text
en: I<flags> is not 0.
fr: I<flags> n'est pas 0.

note: type: Plain text
en: I<liovcnt> or I<riovcnt> is too large.
fr: I<liovcnt> ou I<riovcnt> sont trop grands.

note: type: Plain text
en: Could not allocate memory for internal copies of the I<iovec> structures.
fr: Impossible d'allouer de la mémoire pour les copies internes de structures I<iovec>.

note: type: Plain text
en: The caller does not have permission to access the address space of the process I<pid>.
fr: L'appelant n'a pas le droit d'accéder à l'espace d'adressage du processus I<pid>.

note: type: Plain text
en: No process with ID I<pid> exists.
fr: Aucun processus n'existe avec l'identifiant I<pid>.

note: type: Plain text
en: These system calls were added in Linux 3.2.  Support is provided in glibc since version 2.15.
fr: Ces appels système ont été ajoutés à Linux 3.2. La glibc les gère depuis la version 2.15.

note: type: SH
en: CONFORMING TO
fr: CONFORMITÉ

note: type: Plain text
en: These system calls are nonstandard Linux extensions.
fr: Ces appels système sont des extensions spécifiques à Linux.

note: type: Plain text
en: The data transfers performed by B<process_vm_readv>()  and B<process_vm_writev>()  are not guaranteed to be atomic in any way.
fr: Les transferts de données réalisés par B<process_vm_readv>() et B<process_vm_writev>() ne sont pas garantis être atomiques en aucune façon.

note: Original user is MPI, http://www.mcs.anl.gov/research/projects/mpi/ See also some benchmarks at http://lwn.net/Articles/405284/ and http://marc.info/?l=linux-mm&m=130105930902915&w=2 type: Plain text
en: These system calls were designed to permit fast message passing by allowing messages to be exchanged with a single copy operation (rather than the double copy that would be required when using, for example, shared memory or pipes).
fr: Ces appels système ont été conçus pour permettre la transmission rapide de messages en autorisant l'échange de messages avec une seul opération de copie (plutôt que la double copie qui serait nécessaire en utilisant, par exemple, la mémoire partagée ou les tubes (« pipes »)).

note: type: SH
en: EXAMPLE
fr: EXEMPLE

note: type: Plain text
en: The following code sample demonstrates the use of B<process_vm_readv>().  It reads 20 bytes at the address 0x10000 from the process with PID 10 and writes the first 10 bytes into I<buf1> and the second 10 bytes into I<buf2>.
fr: Le code suivant montre l'utilisation de B<process_vm_readv>(). Il lit 20 octets à l'adresse 0x10000 du processus de PID 10 et écrit les 10 premiers octets dans I<tamp1> et les 10 octets suivants dans I<tamp2>.

note: type: Plain text
en: int
    main(void)
    {
        struct iovec local[2];
        struct iovec remote[1];
        char buf1[10];
        char buf2[10];
        ssize_t nread;
        pid_t pid = 10;             /* PID of remote process */
fr: int
    main(void)
    {
        struct iovec local[2];
        struct iovec remote[1];
        char tamp1[10];
        char tamp2[10];
        ssize_t nread;
        pid_t pid = 10;             /* PID du processus distant */

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: This page is part of release 5.03 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.03 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.02 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.02 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.01 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.01 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.
