zion -  modify_ldt


Nom

modify_ldt - Lire / écrire la LDT.

Résumé

#include <linux/ldt.h> #include <linux/unistd.h> _syscall3(int, modify_ldt, int, func , void *, ptr , unsigned long, bytecount ) 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 nouvelle entrée de LDT a des valeurs illégales.

EFAULT ptr
    pointe en dehors de l'espace d'adressage accessible.


Conformité

Cet appel-système est spécifique à Linux et ne doit pas être employé dans des programmes conçus pour être portables.

Voir aussi

vm86 (2)

Traduction

Christophe Blaess, 1996-2003.

Poster un commentaire
Utilisateur
Mot de passe
 
Informaticien.be - © 2002-2024 AkretioSPRL  - Generated via Kelare
The Akretio Network: Akretio - Freedelity - KelCommerce - Votre publicité sur informaticien.be ?