Closed zakerik10 closed 4 months ago
Me acabo de dar cuenta, justo después de mandar el issue, que al cerrar el archivo bitmap.dat, y volver a abrirlo, se reflejaban los cambios.
Eso es normal que sea asi, no? Por que por ejemplo probe por un momento que en vez de usar bitarray_set_bit, lo hacia por escritura directa, con write, y asi si modificaba el archivo, incluso con el archivo abierto.
Buenas! Cómo va?
El llamado msync()
lo que hace es decirle al programa que sincronice los cambios, pero si por ejemplo van abriendo el archivo con los comandos de consola xxd
o hexdump
cada tanto van a ver que los cambios se reflejan en lugar de tener que volver a abrirlo.
Saludos.-
Okey, yo abria el .bat desde el mismo Visual Gracias.
Buenas! Cómo va?
Claro, nosotros vamos a usar hexdump
o xxd
para ver el contenido de los archivos, no se olviden que las pruebas se corren en la VM sin interfaz gráfica.
Saludos.-
Entiendo, gracias por la respuesta. Cierro issue.
Buenas, estoy haciendo una función que se va a encargar de levantar el bitmap. Si no existe lo crea y demás Hasta ahí todo bien, pero al momento de querer setear algún bit por ejemplo, no se modifica nada en el archivo
Primero abro o creo el archivo bitarray.bat, lo trunco según la cantidad de bloques que voy a tener, genero un puntero del archivo con mmap(), seteo todos los bits en 0, creo un bitarray y cierro el archivo
Mas adelante, pruebo hacer un bitarray_set_bit para ver si esta todo funcionando y después msync
Pero dentro de mi archivo bitmap.dat no se ven los cambios Para verlo, abro el archivo con lectura hexa
Y aca la funcion assignBlock()
Después de ejecutar todo, todo el archivo bitmap.dat sigue todo en 0