├── .gitignore ├── Jamfile ├── Jamroot.jam ├── LICENSE ├── README.md ├── benchmarks ├── Jamfile ├── block_device_test.cpp └── run_benchmark.py ├── docs ├── bittorrent_filesystem.dia ├── bittorrent_filesystem.png ├── btfs.rst ├── file_access.png ├── inode_allocation.dia ├── inode_allocation.png ├── makefile ├── ordered_allocation.png ├── partial_cache_stripe.dia ├── partial_cache_stripe.png ├── piece_size_cdf.png ├── piece_sizes.dat ├── render.gnuplot ├── sequential_allocation.png ├── simulate_sparse.py ├── sizes.dat ├── sizes.gnuplot ├── sizes_cdf.dat ├── sparse_access.png ├── stylesheet └── torrent_size_cdf.png ├── src ├── block_affinity.cpp ├── block_affinity.hpp ├── block_allocator.cpp ├── block_allocator.hpp ├── block_device.cpp ├── block_device.hpp ├── btfs.cpp ├── pool_allocator.cpp └── pool_allocator.hpp └── test ├── Jamfile ├── render.gnuplot └── test_block_allocator.cpp /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/.gitignore -------------------------------------------------------------------------------- /Jamfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/Jamfile -------------------------------------------------------------------------------- /Jamroot.jam: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/README.md -------------------------------------------------------------------------------- /benchmarks/Jamfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/benchmarks/Jamfile -------------------------------------------------------------------------------- /benchmarks/block_device_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/benchmarks/block_device_test.cpp -------------------------------------------------------------------------------- /benchmarks/run_benchmark.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/benchmarks/run_benchmark.py -------------------------------------------------------------------------------- /docs/bittorrent_filesystem.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/bittorrent_filesystem.dia -------------------------------------------------------------------------------- /docs/bittorrent_filesystem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/bittorrent_filesystem.png -------------------------------------------------------------------------------- /docs/btfs.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/btfs.rst -------------------------------------------------------------------------------- /docs/file_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/file_access.png -------------------------------------------------------------------------------- /docs/inode_allocation.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/inode_allocation.dia -------------------------------------------------------------------------------- /docs/inode_allocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/inode_allocation.png -------------------------------------------------------------------------------- /docs/makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/makefile -------------------------------------------------------------------------------- /docs/ordered_allocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/ordered_allocation.png -------------------------------------------------------------------------------- /docs/partial_cache_stripe.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/partial_cache_stripe.dia -------------------------------------------------------------------------------- /docs/partial_cache_stripe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/partial_cache_stripe.png -------------------------------------------------------------------------------- /docs/piece_size_cdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/piece_size_cdf.png -------------------------------------------------------------------------------- /docs/piece_sizes.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/piece_sizes.dat -------------------------------------------------------------------------------- /docs/render.gnuplot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/render.gnuplot -------------------------------------------------------------------------------- /docs/sequential_allocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/sequential_allocation.png -------------------------------------------------------------------------------- /docs/simulate_sparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/simulate_sparse.py -------------------------------------------------------------------------------- /docs/sizes.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/sizes.dat -------------------------------------------------------------------------------- /docs/sizes.gnuplot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/sizes.gnuplot -------------------------------------------------------------------------------- /docs/sizes_cdf.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/sizes_cdf.dat -------------------------------------------------------------------------------- /docs/sparse_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/sparse_access.png -------------------------------------------------------------------------------- /docs/stylesheet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/stylesheet -------------------------------------------------------------------------------- /docs/torrent_size_cdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/docs/torrent_size_cdf.png -------------------------------------------------------------------------------- /src/block_affinity.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_affinity.cpp -------------------------------------------------------------------------------- /src/block_affinity.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_affinity.hpp -------------------------------------------------------------------------------- /src/block_allocator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_allocator.cpp -------------------------------------------------------------------------------- /src/block_allocator.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_allocator.hpp -------------------------------------------------------------------------------- /src/block_device.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_device.cpp -------------------------------------------------------------------------------- /src/block_device.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/block_device.hpp -------------------------------------------------------------------------------- /src/btfs.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/btfs.cpp -------------------------------------------------------------------------------- /src/pool_allocator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/pool_allocator.cpp -------------------------------------------------------------------------------- /src/pool_allocator.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/src/pool_allocator.hpp -------------------------------------------------------------------------------- /test/Jamfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/test/Jamfile -------------------------------------------------------------------------------- /test/render.gnuplot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/test/render.gnuplot -------------------------------------------------------------------------------- /test/test_block_allocator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arvidn/btfs/HEAD/test/test_block_allocator.cpp --------------------------------------------------------------------------------