Contenido   Archivos   Índice   Bugs   Ejemplos  

Referencia del Archivo unistd.h

Se agregaron las definiciones necesarias para registrar las nuevas llamadas al sistema. Más...


Definiciones

#define __NR_aclstat   226
 Número de la llamada al sistema sys_aclstat().

#define __NR_aclfstat   227
 Número de la llamada al sistema sys_aclfstat().

#define __NR_acladd   228
 Número de la llamada al sistema sys_acladd().

#define __NR_acldel   229
 Número de la llamada al sistema sys_acldel().

#define __NR_chsubsc   230
 Número de la llamada al sistema sys_chsubsc().

#define __NR_sscstat   231
 Número de la llamada al sistema sys_sscstat().

#define __NR_chobjsc   232
 Número de la llamada al sistema sys_chobjsc().

#define __NR_ownerclose   233
 Número de la llamada al sistema sys_ownerclose().

#define __NR_oscstat   234
 Número de la llamada al sistema sys_oscstat().


Descripción detallada

Se agregaron las definiciones necesarias para registrar las nuevas llamadas al sistema.


Documentación de las definiciones

#define __syscall_return type,
res   
 

Valor:

do { \
    if ((unsigned long)(res) >= (unsigned long)(-125)) { \
        errno = -(res); \
        res = -1; \
    } \
    return (type) (res); \
} while (0)

#define _syscall0 type,
name   
 

Valor:

type name(void) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name)); \
__syscall_return(type,__res); \
}

#define _syscall1 type,
name,
type1,
arg1   
 

Valor:

type name(type1 arg1) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name),"b" ((long)(arg1))); \
__syscall_return(type,__res); \
}

#define _syscall2 type,
name,
type1,
arg1,
type2,
arg2   
 

Valor:

type name(type1 arg1,type2 arg2) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2))); \
__syscall_return(type,__res); \
}

#define _syscall3 type,
name,
type1,
arg1,
type2,
arg2,
type3,
arg3   
 

Valor:

type name(type1 arg1,type2 arg2,type3 arg3) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2)), \
          "d" ((long)(arg3))); \
__syscall_return(type,__res); \
}

#define _syscall4 type,
name,
type1,
arg1,
type2,
arg2,
type3,
arg3,
type4,
arg4   
 

Valor:

type name (type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2)), \
      "d" ((long)(arg3)),"S" ((long)(arg4))); \
__syscall_return(type,__res); \
}

#define _syscall5 type,
name,
type1,
arg1,
type2,
arg2,
type3,
arg3,
type4,
arg4,
type5,
arg5   
 

Valor:

type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
    : "=a" (__res) \
    : "0" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2)), \
      "d" ((long)(arg3)),"S" ((long)(arg4)),"D" ((long)(arg5))); \
__syscall_return(type,__res); \
}

#define _syscall6 type,
name,
type1,
arg1,
type2,
arg2,
type3,
arg3,
type4,
arg4,
type5,
arg5,
type6,
arg6   
 

Valor:

type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5,type6 arg6) \
{ \
long __res; \
__asm__ volatile ("push %%ebp ; movl %%eax,%%ebp ; movl %1,%%eax ; int $0x80 ; pop %%ebp" \
    : "=a" (__res) \
    : "i" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2)), \
      "d" ((long)(arg3)),"S" ((long)(arg4)),"D" ((long)(arg5)), \
      "0" ((long)(arg6))); \
__syscall_return(type,__res); \
}


Generado el Fri Jan 10 09:11:43 2003 para Lisex por doxygen1.3-rc2