I don't know if there IS an exact definition of journalling, but the way
I've come to know it, is that journalling is a big category of
filesystems, and log-structured fs'es are a sub-category. Normally,
journalling is done on meta-data, because (as you note) a fully
log-structured fs comes with a lot of design problems.
However, log-structured systems do use a garbage collector which cleans up
redundant data from the beginning of the log, and it can also defrag by
aggregating and moving blocks to the end of the log as it goes, releaving
the read penalties.
Still, all that fuzz for a HD-based filesystem is probably not worth it,
so that's why most journalled filesystems don't do data logging. Now,
there are other occations where this is desired, for example if the media
doesn't support random block writes (for example, standard flashes) - then
it's good to have a system that always writes sequentially.
/Bjorn
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/