NOMBRE
bdflush − inicia, vuelca, o ajusta el demonio 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 demonio alguno, entonces bdflush entra en el código del demonio 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 demonio 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 demonio 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.