MODIFY_LDT(2) Manuel du programmeur Linux MODIFY_LDT(2)
NOM
modify_ldt - Lire / écrire la LDT.
SYNOPSIS
#include <linux/ldt.h>
#include <linux/unistd.h>
_syscall3( int, modify_ldt, int, func, void *, ptr, unsigned long, bytec
int modify_ldt(int func, void *ptr, unsigned long bytecount);
DESCRIPTION
modify_ldt lit ou écrit la table des descripteurs locaux
(Local Descriptor Table) du processus. La LDT est une
table de gestion mémoire par processus utilisée par les
processeurs i386. Pour plus d'information sur cette table,
se reporter au manuel Intel 386.
Quand func vaut 0, modify_ldt lit la LDT et la place dans
la mémoire pointée par ptr. Le nombre d'octets lus est le
minimum entre bytecount et la vraie taille de la LDT.
Quand func vaut 1, modify_ldt modifie une entrée de la
LDT. ptr pointe sur une structure modify_ldt_ldt_s et
bytecount doit être égal à la taille de cette structure.
VALEUR RENVOYÉE
S'il réussit modify_ldt renvoie soit le nombre d'octets
lus soit 0 (écriture). En cas d'échec -1 est renvoyé et
errno contient le code d'erreur.
ERREURS
ENOSYS func n'est ni 0 ni 1.
EINVAL ptr est nul, ou bytecount n'est pas égal à la
taille de la structure modify_ldt_ldt_s, ou la nou
velle entrée de LDT a des valeurs illégales.
EFAULT ptr pointe en dehors de l'espace d'adressage acces
sible.
CONFORMITÉ
Cet appel-système est spécifique à Linux et ne doit pas
être employé dans des programmes conçus pour être porta
bles.
VOIR AUSSI
vm86(2)
TRADUCTION
Christophe Blaess, 1997.
Linux 1.3.6 8 Avril 1997 1