En informatique, unistd.h est un fichier d'en-tête pour les langages de programmation C et C++, il donne accès à l'API du système d'exploitation POSIX. Il est défini par la norme POSIX.1, la base de la Single Unix Specification (SUS), et il devrait donc être disponible dans tout système d'exploitation et compilateur compatible POSIX. Par exemple, cela inclut les systèmes d'exploitation Unix et similaires, tels que les variantes de GNU, les distributions de Linux et BSD, et macOS, et les compilateurs tels que GCC et LLVM.

Sur les systèmes de type Unix, l'interface définie par unistd.h est typiquement composée en grande partie de fonctions d'enveloppe d'appel système telles que fork, pipe et de primitives d'E/S (read, write, close, etc.).

Aperçu des fonctions

Fonction Description crypt chiffre des mots de passe et des données encrypt chiffre les messages 64 bits gethostid obtenir l'identifiant unique de l'hôte actuel gethostname obtenir le nom d'hôte getopt analyser les options des lignes de commande swab échanger des octets adjacents sysconf obtenir la configuration au moment de l'exécution Signaux alarm programmer un signal d'alarme pause attendre le signal Système fichiers accessfaccessatfaccessat2 vérifier les permissions de l'utilisateur pour un fichier chdirfchdir changer de répertoire de travail chownfchownlchownfchownat changer le propriétaire et le groupe d'un fichier close fermer un descripteur de fichier dupdup2 dupliquer un descripteur de fichier fsyncfdatasync synchroniser l'état in-core d'un fichier avec le périphérique de stockage fpathconfpathconf obtenir les valeurs de configuration des fichiers ftruncatetruncate tronquer un fichier à une longueur spécifiée getcwdgetwdget_current_dir_name récupérer le répertoire de travail actuel isatty tester si un descripteur de fichier fait référence à un terminal linklinkat créer un nouveau nom pour un fichier lockf appliquer, tester ou supprimer un verrou POSIX sur un fichier ouvert lseek repositionnement lecture/écriture décalage du fichier pipepipe2 créer un tube preadpwrite lire ou écrire dans un descripteur de fichier à un décalage donné read lire à partir d'un descripteur de fichier readlinkreadlinkat lire la valeur d'un lien symbolique rmdir supprimer un répertoire symlinksymlinkat créer un nouveau nom pour un fichier syncsyncfs livrer les caches du système de fichiers sur le disque ttynamettyname_r nom de retour d'un terminal unlinkunlinkat supprimer un nom et éventuellement le fichier auquel il se réfère write écrire sur un descripteur de fichier Processus _exit mettre fin au processus d'appel execlexeclpexecleexecvexecvpexecvpe exécuter un fichier fexecve exécute le programme spécifié par le descripteur de fichier fork créer un nouveau processus setpgidgetpgidsetpgrpgetpgrp définir/obtenir le groupe de processus getpidgetppid obtenir l'identification du processus getsid obtenir l'ID de la session nice priorité du processus de changement setsid crée une session et définit l'ID du groupe de processus sleep dormir pendant un nombre de secondes spécifié tcgetpgrptcsetpgrp obtenir et définir le groupe de processus de premier plan du terminal Utilisateur/Groupe getgidgetegid obtenir l'identité du groupe getuidgeteuid obtenir l'identité de l'utilisateur getgroups obtenir la liste des ID des groupes supplémentaires getlogingetlogin_r obtenir le nom d'utilisateur seteuidsetegid définir l'ID de l'utilisateur ou du groupe effectif setgid définir l'identité du groupe setreuidsetregid définir l'ID réel et/ou effectif de l'utilisateur ou du groupe setuid définir l'identité de l'utilisateur

Couche de compatibilité Windows Certains logiciels comme Cygwin et MinGW fournissent leurs propres versions de unistd.h, pour faire une traduction des appels de fonction POSIX en appel de fonction Windows.

Références externes unistd.h dans opengroup unistd.h dans Dave's C tutorial unistd.h dans man7

Catégorie:Bibliothèque standard du C Catégorie:Unix Catégorie:POSIX