Skip to content

Latest commit

 

History

78 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TSO (Português)

Projeto realizado na UC de Tecnologias de Sistemas Operativos.

Grupo 01

Estrutura Do Repositório

  • Projeto - implementação do filesystem de deduplicação.
  • Passthrough - implementação do filesystem passthrough usada para comparação.
  • Scripts - scripts .sh de benchmark.
  • Resultados - CSV com os resultados dos benchmarks.
  • Scripts Python - scripts Python para geração de gráficos.
  • Gráficos - resultados gerados pelos scripts Python, organizados por cenário.
  • Relatório - relatório principal do projeto.
  • Enunciado - enunciado original da UC.

Compilação

Projeto principal

Para compilar os testes do engine e do recipe:

cd projeto
make

Para compilar o projeto:

cd projeto
make fuse

Para executar os testes automáticos do projeto.

cd projeto
make test

Passthrough

Para compilar o passthrough:

cd passthrough
gcc -Wall passthrough.c `pkg-config fuse3 --cflags --libs` -o passthrough_fs

Execução

Dedup FS

Depois de compilar o projeto principal, o filesystem pode ser executado com:

cd projeto
sudo ./dedup_fs --store=/backend /mnt/dedupfs -o allow_other -f

Executar os testes automáticos

cd projeto
make test

Passthrough

Depois de compilar o passthrough, o mesmo pode ser executado com:

cd passthrough
sudo ./passthrough_fs /mnt/fs -omodules="subdir,subdir=/backend" -o allow_other -f

Scripts Shell

Os scripts .sh estão em scripts/.

Exemplos:

sudo bash scripts/dedup_test_terminal.sh /mnt/dedupfs 50 /backend 268435456
sudo bash scripts/dedup_test_csv.sh /mnt/dedupfs 50 scripts/results/dedup.csv /backend 268435456
sudo bash scripts/dedup_test_csv_nTimes.sh /mnt/dedupfs 50 scripts/results/dedup.csv 20 /backend 268435456

Scripts Python

Os scripts Python estão em scripts/python/.

Dependências:

cd scripts/python
python3 -m pip install matplotlib pandas

Execução:

cd scripts/python
python3 plot_scenario.py 50

TSO (English)

Project developed for the Operating Systems Technologies course.

Group 01


Repository Structure

  • Project - deduplication filesystem implementation.
  • Passthrough - passthrough filesystem implementation used for comparison.
  • Scripts - benchmark .sh scripts.
  • Results - CSV files with benchmark results.
  • Python Scripts - Python scripts for chart generation.
  • Charts - outputs generated by the Python scripts, organised by scenario.
  • Report - main project report.
  • Assignment - original course assignment.

Building

Main project

To build the engine and recipe tests:

cd projeto
make

To build the project:

cd projeto
make fuse

To run the automated project tests:

cd projeto
make test

Passthrough

To build the passthrough:

cd passthrough
gcc -Wall passthrough.c `pkg-config fuse3 --cflags --libs` -o passthrough_fs

Running

Dedup FS

After building the main project, the filesystem can be mounted with:

cd projeto
sudo ./dedup_fs --store=/backend /mnt/dedupfs -o allow_other -f

Run the automated tests

cd projeto
make test

Passthrough

After building the passthrough, it can be mounted with:

cd passthrough
sudo ./passthrough_fs /mnt/fs -omodules="subdir,subdir=/backend" -o allow_other -f

Shell Scripts

The .sh scripts are located in scripts/.

Examples:

sudo bash scripts/dedup_test_terminal.sh /mnt/dedupfs 50 /backend 268435456
sudo bash scripts/dedup_test_csv.sh /mnt/dedupfs 50 scripts/results/dedup.csv /backend 268435456
sudo bash scripts/dedup_test_csv_nTimes.sh /mnt/dedupfs 50 scripts/results/dedup.csv 20 /backend 268435456

Python Scripts

The Python scripts are located in scripts/python/.

Dependencies:

cd scripts/python
python3 -m pip install matplotlib pandas

Usage:

cd scripts/python
python3 plot_scenario.py 50

About

Projeto realizado na UC de Tecnologias de Sistemas Operativos

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages