Manual del Programador de Linux (2)
30 junio 1996
 

NOMBRE

bdflush - inicia, vuelca, o ajusta el duende para la limpieza de búferes sucios o modificados  

SINOPSIS

int bdflush(int func, long *address);
int bdflush(int func, long data);
 

DESCRIPCIÓN

bdflush

inicia, limpia o ajusta el duende "bdflush". Solamente el superusuario puede llamar a bdflush.

Si func es negativo ó 0, y no se ha iniciado duende alguno, entonces bdflush entra en el código del duende y nunca regresa.

Si func es 1, algunos búferes sucios (modificados) se escriben en el disco.

Si func es 2 ó más y es par (el bit menos significativo es 0), entonces address es la dirección de una palabra larga y el valor del parámetro de ajuste cuyo número es (func-2)/2 se devuelve en dicha dirección.

Si func es 3 ó más e impar (el bit menos significativo es 1), entonces data es una palabra larga y el núcleo asigna dicho valor al parámetro de ajuste cuyo número es (func-3)/2

El conjunto de parámetros, sus valores y sus intervalos válidos están especificados en el fichero fs/buffer.c de los fuentes del núcleo.  

VALOR DEVUELTO

Si func es negativo ó 0 y el duende comienza satisfactoriamente, bdflush nunca regresa. En caso contrario, el valor devuelto es 0 en caso de éxito y -1 en caso de error, y a errno se le asigna el tipo de error.  

ERRORES

EPERM
El que llama a esta rutina no es el superusuario.
EFAULT
La dirección address apunta afuera de su espacio de direcciones accesible.
EBUSY
Se ha intentado entrar en el código del duende después de que otro proceso ya lo haya hecho.
EINVAL
Se ha intentado leer o escribir un número de parámetro inválido, o asignar un valor inválido a un parámetro.
 

CONFORME A

bdflush

es una función específica de Linux y no se debe usar en aquellos programas que pretendan ser transportables.  

VÉASE TAMBIÉN

fsync

(2), sync(2), update(8), sync(8)

Nuevo comentario