.\" -*- coding: UTF-8 -*- .\" Copyright (C) 1995, Thomas K. Dyas .\" and Copyright (C) 2016, Michael Kerrisk .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" Created Sat Aug 21 1995 Thomas K. Dyas .\" .\" typo corrected, aeb, 950825 .\" added layout change from joey, 960722 .\" changed prototype, documented 0xffffffff, aeb, 030101 .\" Modified 2004-11-03 patch from Martin Schulze .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH PERSONALITY 2 "15 septembre 2017" Linux "Manuel du programmeur Linux" .SH NOM personality \- Indiquer le domaine d'exécution du processus .SH SYNOPSIS \fB#include \fP .PP \fBint personality(unsigned long \fP\fIpersona\fP\fB);\fP .SH DESCRIPTION Linux propose différents domaines d'exécution, ou personnalités, pour chaque processus. Entre autres choses, le domaine d'exécution indique au noyau la manière de convertir les numéros de signaux en actions. Le domaine d'exécution permet à Linux d'offrir une prise en charge (limitée) à des fichiers binaires compilés sous d'autres systèmes d'exploitation compatibles UNIX. .PP Si \fIpersona\fP n’est pas 0xffffffff, alors \fBpersonality\fP() définit le domaine d’exécution de l’appelant à la valeur indiquée par \fIpersona\fP. Indiquer \fIpersona\fP à 0xffffffff permet de récupérer la personnalité actuelle sans la modifier. .PP Une liste des domaines d'exécution disponibles se trouve dans \fI\fP. Le domaine d'exécution est une valeur 32\ bits où les trois premiers octets sont réservés à des attributs qui font modifier par le noyau le comportement de certains appels système pour émuler des excentricités architecturales ou historiques. L'octet le moins significatif est la valeur définissant la personnalité que le noyau doit supposer. Les valeurs des attributs sont les suivantes\ : .TP \fBADDR_COMPAT_LAYOUT\fP (depuis Linux 2.6.9) Avec cet attribut, fournir une couche d'espace d'adressage virtuelle basique. .TP \fBADDR_NO_RANDOMIZE\fP (depuis Linux\ 2.6.12) Avec cet attribut, désactiver la randomisation de la couche d'espace d'adressage. .TP \fBADDR_LIMIT_32BIT\fP (depuis Linux\ 2.20) Limiter l'espace d'adressage à 32\ bits. .TP \fBADDR_LIMIT_3GB\fP (depuis Linux\ 2.4.0) Avec cet attribut, utiliser 0xc0000000 comme position où chercher un bloc de mémoire virtuelle sur \fBmmap\fP(2)\ ; sinon utiliser 0xffffe000. .TP \fBFDPIC_FUNCPTRS\fP (depuis Linux\ 2.6.11) Les pointeurs de fonction de l'espace utilisateur vers des gestionnaires de signaux pointent (sur certaines architectures) vers des descripteurs. .TP \fBMMAP_PAGE_ZERO\fP (depuis Linux\ 2.4.0) La page de projection \fB0\fP en lecture seule (pour prendre en charge les binaires qui dépendent de ce comportement SVr4). .TP \fBREAD_IMPLIES_EXEC\fP (depuis Linux 2.6.8) Avec cet attribut, \fBPROT_READ\fP implique \fBPROT_EXEC\fP pour \fBmmap\fP(2). .TP \fBSHORT_INODE\fP (depuis Linux\ 2.4.0) Aucun effet(?). .TP \fBSTICKY_TIMEOUTS\fP (depuis Linux\ 1.2.0) Avec cet attribut, \fBselect\fP(2), \fBpselect\fP(2) et \fBppoll\fP(2) ne modifient pas le paramètre de délai renvoyé lorsqu'il est interrompu par un gestionnaire de signal. .TP \fBUNAME26\fP (depuis Linux\ 3.1) Demander à \fBuname\fP(2) de signaler un numéro de version\ 2.6.40+ au lieu d'un 3.x. Ajouté à titre de rattrapage pour gérer les applications cassées qui ne pouvaient pas gérer le passage de la numérotation de version du noyau de 2.6.x à 3.x. .TP \fBWHOLE_SECONDS\fP (depuis Linux\ 1.2.0) Aucun effet(?). .PP Les domaines d'exécution disponibles sont\ : .TP \fBPER_BSD\fP (depuis Linux\ 1.2.0) BSD. (pas d'effet) .TP \fBPER_HPUX\fP (depuis Linux\ 2.4) Gestion de HP/UX 32\ bits. Cette prise en charge n'a jamais été totale et a été abandonnée, si bien qu'à partir de Linux\ 4.0, cette valeur n'a pas d'effet. .TP \fBPER_IRIX32\fP (depuis Linux\ 2.2) IRIX 5 32\ bits. Jamais totalement opérationnel\ ; prise en charge abandonnée dans Linux 2.6.27. Implique \fBSTICKY_TIMEOUTS\fP. .TP \fBPER_IRIX64\fP (depuis Linux\ 2.2) IRIX 6 64\ bits. Implique \fBSTICKY_TIMEOUTS\fP\ ; sinon aucun effet. .TP \fBPER_IRIXN32\fP (depuis Linux\ 2.2) IRIX 6 nouveau 32\ bits. Implique \fBSTICKY_TIMEOUTS\fP\ ; sinon aucun effet. .TP \fBPER_ISCR4\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP\ ; sinon aucun effet. .TP \fBPER_LINUX\fP (depuis Linux\ 1.2.0) Linux. .TP \fBPER_LINUX32\fP (depuis Linux\ 2.2) [À documenter]. .TP \fBPER_LINUX32_3GB\fP (depuis Linux\ 2.4) Implique \fBADDR_LIMIT_3GB\fP. .TP \fBPER_LINUX_32BIT\fP (depuis Linux\ 2.0) Implique \fBADDR_LIMIT_32BIT\fP. .TP \fBPER_LINUX_FDPIC\fP (depuis Linux 2.6.11) Implique \fBFDPIC_FUNCPTRS\fP. .TP \fBPER_OSF4\fP (depuis Linux\ 2.4) .\" Following is from a comment in arch/alpha/kernel/osf_sys.c OSF/1 v4. Sur alpha, vider les 32\ premiers bits de iov_len dans le tampon de l'utilisateur pour être compatible avec les anciennes versions de OSF/1 où iov_len était défini comme \fIint\fP. .TP \fBPER_OSR5\fP (depuis Linux\ 2.4) Implique \fBSTICKY_TIMEOUTS\fP et \fBWHOLE_SECONDS\fP\ ; sinon aucun effet. .TP \fBPER_RISCOS\fP (depuis Linux\ 2.2) [À documenter]. .TP \fBPER_SCOSVR3\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP, \fBWHOLE_SECONDS\fP et \fBSHORT_INODE\fP\ ; sinon aucun effet. .TP \fBPER_SOLARIS\fP (depuis Linux\ 2.4) Implique \fBSTICKY_TIMEOUTS\fP\ ; sinon aucun effet. .TP \fBPER_SUNOS\fP (depuis Linux\ 2.4.0) Implique \fBSTICKY_TIMEOUTS\fP. Lance la recherche de la bibliothèque et de l'éditeur de liens dynamique dans \fI/usr/gnemul\fP. Bogué, très mal entretenu, presque totalement inusité\ ; la prise en charge a été supprimée dans Linux\ 2.6.26. .TP \fBPER_SVR3\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP et \fBSHORT_INODE\fP\ ; sinon aucun effet. .TP \fBPER_SVR4\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP et \fBMMAP_PAGE_ZERO\fP\ ; sinon aucun effet. .TP \fBPER_UW7\fP (depuis Linux\ 2.4) Implique \fBSTICKY_TIMEOUTS\fP et \fBMMAP_PAGE_ZERO\fP\ ; sinon aucun effet. .TP \fBPER_WYSEV386\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP et \fBSHORT_INODE\fP\ ; sinon aucun effet. .TP \fBPER_XENIX\fP (depuis Linux\ 1.2.0) Implique \fBSTICKY_TIMEOUTS\fP et \fBSHORT_INODE\fP\ ; sinon aucun effet. .SH "VALEUR RENVOYÉE" Renvoi de l'ancienne valeur \fIpersona\fP s'il réussit, ou \fB\-1\fP s'il échoue, auquel cas \fIerrno\fP contient le code d'erreur. .SH ERREURS .TP \fBEINVAL\fP Le noyau n'a pas pu changer la personnalité. .SH VERSIONS .\" personality wrapper first appeared in glibc 1.90, .\" was added later in 2.2.91. Cet appel système est apparu dans Linux\ 1.1.20 (ainsi, pour la première fois dans la version stable du noyau Linux 1.2.0)\ ; la glibc le gère depuis la version\ 2.3. .SH CONFORMITÉ \fBpersonality\fP() est spécifique à Linux et ne devrait pas être utilisé dans des programmes destinés à être portables. .SH "VOIR AUSSI" \fBsetarch\fP(8) .SH COLOPHON Cette page fait partie de la publication\ 5.10 du projet \fIman\-pages\fP Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man\-pages/. .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Jean-Philippe MENGUAL . Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .