[gl-como] Summer of code - breve descrizione del progetto

Luca kronos.it@gmail.com
Lun 11 Giu 2007 14:48:18 CEST


On 6/11/07, Pietro m0nt0 Montorfano <monto@gl-como.net> wrote:
> Volevo fare qualche piccola osservazione dal punto di vista pratico:
> - Si parla di realizzare un filesystem, questo implica la progettazione
> di un filesystem appunto che vuol dire gestione partizioni e gestione
> disco a livello infimo (mooooolto basso),

Non _così_ basso. Il layer di FS è ben progettato, a livello di FS
vedi ancora un'astrazione del disco. Il problema è piuttosto la
barriera di entrata posta dallo sviluppo di un FS nel kernel; meglio
sarebbe concentrarsi su FUSE.
In favore di FUSE c'è la possibilità di crashare senza tirare giù
tutto il sistema ;-) Dal punto di vista della sicurezza il progetto è
un incubo, perché bisogna supporre che ogni metadato di ogni formato
sia non valido e potenzialmente malizioso. Il rischio avendo tutti i
parser per gli N formati supportati in kernel è veramente alto.

> ora mi piacerebbe, solo che lo
> vedo come un lavoraccio e pure cattivo perchè andrebbe implementato
> anche un minimo di journaling (se si scrive cosi).

Per la classificazione non è necessario, visto che i dati mostrati
sono i metadati di altri file che stanno su un *altro* FS. Qualche
problema possono darlo i "personal tag", ma è possibile che sia
possibile implementarli come xattr dei file sul FS originale.
Questo ipotetico FS lo vedrei bene RAM-based, popolato on-demand ad
ogni avvio, basandosi sui dati persistenti messi in un DB.

> - La modularità dell'applicazione puo esserci se effettivamente si
> rimane ad un'applicazione, se si fa un filesystem autoadattante mi sa
> che se ne va a farsi benedire

Le due cose non sono incompatibili.

> Comunque, progetti da cui prendere spunto ce ne sono: beagle per
> l'indicizzazione, tripwire o qualcosa di simile per monitorare lo stato
> dei file, file (si il programmino da linea di comando) per identificare
> il tipo di file in questione...

Tripwire usa i checksum per trovare la modifica ex post. Sotto Linux
esiste inotify() per avere le notifiche in tempo reale.

Luca


Maggiori informazioni sulla lista gl-como