#ifndef __SO_BLK_H #define __SO_BLK_H #include /** * Monta el volumen en memoria. *---- * Parámetros: * path: ruta UNIX al volumen * * Códigos de retorno: * OK: Logró montar. * ERROR: Hubo un error. *---- **/ int SO_blk_mount(char * path); /** * Desmonta el volumen salvando el estado del volumen de memoria a disco. *---- * Parámetros: * * Códigos de retorno: * OK: Desmontó correctamente. * ERROR: Hubo un error. *---- **/ int SO_blk_umount(void); /** * Lee un bloque del dispositivo, indexado por el parámetro blockNum. * El parámetro block debe apuntar a un bloque del tamaño de un bloque. *---- * Parámetros: * blockNum: Número de bloque a leer. El bloque 0 es el superbloque. * block: Puntero a un bloque de bytes igual al tamaño de bloque. * * Códigos de retorno: * OK: Pudo leer correctamente. * ERROR: Hubo un error. *---- **/ int SO_blk_bread(u16 blockNum, void * block); /** * Graba un bloque al dispositivo, indexado por el parámetro blockNum * El parámetro block debe apuntar a un bloque del tamaño de un bloque. *---- * Parámetros: * blockNum: Número de bloque a grabar. El bloque 0 es el superbloque. * block: Puntero a un bloque de bytes igual al tamaño de bloque. * * Códigos de retorno: * OK: Pudo grabar correctamente. * ERROR: Hubo un error. *---- **/ int SO_blk_bwrite(u16 blockNum, const void * block); #endif