My talk at the Linux Day 2015 in Rome (in Italian).
The master
branch contains the source code, whilst the gh-pages
branch contains the generated web pages.
The slides are also available in a printable format at issuu as well as at SlideShare.
I offer a brief historical introduction as well as a technical overview of FUSE, an ingenious combination of a userspace interface and kernel code that allows us to implement, effortlessly, a filesystem in userspace. The reference implementation is fully FOSS, being covered by GPL for the kernel part, and by LGPL for the C library.
From a computer-theoretical point of view, through FUSE the Linux kernel draw closer to more “academic”, microkernel-based operating systems, like the Hurd.
A minimal but functional implementation of a toy filesystem is proposed as a working example.
L’intervento propone una brevissima introduzione storica e una panoramica tecnica di FUSE, la geniale combinazione di codice kernel e di API utente che consente di implementare, con sforzo ridotto, file system direttamente in user space.
L’implementazione di riferimento è pienamente FOSS, essendo coperta da GPL per la parte kernel, e da LGPL per la libreria C.
L’argomento ha peraltro un suo interesse anche dal punto di vista teorico, in quanto FUSE avvicina per certi versi il kernel Linux a sistemi operativi più “accademici” come Hurd.
Si intende concludere l’intervento presentando un semplice “working example”, un’implementazione minimale ma funzionante di un “toy file system”.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.