Skip to content

An in-memory filesystem implementation over the FUSE base operations scafolding with implemented persistency when unmounting

Notifications You must be signed in to change notification settings

gabrieldiem/filesystem

Repository files navigation

fisopfs

Repositorio para el esqueleto del TP: filesystem del curso Mendez-Fresia de Sistemas Operativos (7508) - FIUBA

Sistema de archivos tipo FUSE.

Respuestas teóricas

Utilizar el archivo fisopfs.md provisto en el repositorio

Compilar

$ make

Ejecutar

Setup

Primero hay que crear un directorio de prueba:

$ mkdir prueba

Iniciar el servidor FUSE

En el mismo directorio que se utilizó para compilar la solución, ejectuar:

$ ./fisopfs prueba/

Hay una flag --filedisk NAME para indicar que archivo se quiere utilizar como archivo de persistencia en disco. El valor por defecto es "persistence_file.fisopfs"

$ ./fisopfs prueba/ --filedisk nuevo_disco.fisopfs

Verificar directorio

$ mount | grep fisopfs

Utilizar el directorio de "pruebas"

En otra terminal, ejecutar:

$ cd prueba
$ ls -al

Limpieza

$ sudo umount prueba

Docker

Existen tres targets en el archivo Makefile para utilizar docker.

  • docker-build: genera la imagen basada en "Ubuntu 20.04" con las dependencias de FUSE
  • docker-run: crea un container basado en la imagen anterior ejecutando bash
    • acá se puede ejecutar make y luego ./fisopfs -f ./prueba
  • docker-attach: permite vincularse al mismo container anterior para poder realizar pruebas
    • acá se puede ingresar al directorio prueba

Linter

$ make format

Para efectivamente subir los cambios producidos por el format, hay que git add . y git commit.

About

An in-memory filesystem implementation over the FUSE base operations scafolding with implemented persistency when unmounting

Topics

Resources

Stars

Watchers

Forks