Download Ferrisfuse - Ferrisfuse Description, Ferrisfuse Reviews
Contact
 


 

Download

 
Download Now (0K)
GPL (GNU General Public License)
Downloads till now: 1
 
 

Quick search

 



 

Rate this software

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

No. Votes

0

 

Linux

Archiving , Backup , Benchmarks , Boot , Clustering and Distributed Net, Clustering and Distributed Networks , Console Fonts, Diagnostics, Emulators , Filesystems , Hardware , Installer/Setup , Logging , Monitoring , Networking , Operating Systems , Operating Systems Kernels, Operating Systems Linux Distri, Operating Systems Other, Recovery , Shells , Software Distribution , System Administration ,

Windows

Mac

Mobile

Drivers

Scripts - DHTML

Scripts - DHTML (new)

Web Developer Blog

Web Developer Blog (new)

Scripts and Applications

Ajax
ASP
ASP.NET
C and C++
CFML
CGI and Perl
Flash
Java
JavaScript
PHP
Python
XML

ferrisfuse

 

Details

Size: 0K
Last Update: 2008-06-04 22:23:39
Version: 0.0.2
OS Support: Linux
License/Program Type: GPL (GNU General Public License)
Publisher: Ben Martin
Price:$0.00
Description:

ferrisfuse 0.0.2 is filesystems software developed by Ben Martin.
ferrisfuse is a FUSE module for mounting libferris filesystems through the Linux kernel.



About libferris

In non technical terms libferris makes the file system and other hierarchical storage systems easier to use. For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. The FAQ contains entries related to installation, configuration and the usage of libferris.

As of July 2005 libferris can mount many interesting things ranging from a filesystem from your local Linux kernel through to LDAP, Evolution, PostgreSQL, dbXML, and RDF. To get an impression of the current capabilities of libferris mounting see the plugins/context directory of the lastest release. New things to mount are always being added.

Other than mounting things as a filesystem, the other core concept of libferris is extraction of interesting metadata from your libferris filesystems. This means that simple things like width and height of an image file become first class metadata citizens along with a file's size and modification time. The limits on what metadata is available extend far beyond image metadata to include XMP, EXIF, music ID tags, geospatial tags, rpm metadata, SELinux integration, partially ordered emblem categories and arbitrary personal RDF stores of metadata.

Though some consider the last point of purely academic interest the end result is that you can add metadata to all libferris objects even those you only have read access too, for example, you can attach emblems to this website just as you would a normal file. The metadata interface gives all metadata from file size to digital signature status information equal standing. As such you can sort a directory by any metadata just as easily as you would ls -Sh to sort by file size. Sorting on multiple metadata values is also supported in libferris, you can easily sort your files by mimetype, then image width, then modification time with all three pieces of metadata contributing to the final directory ordering.

Late in 2004 extensive support for both fulltext and metadata indexing was added to libferris. This means you can supply queries against the contents or metadata of any libferris accessable object and have the results returned as a virtual filesystem. With the above mentioned metadata available for searching, finding your files can be done in many different ways instead of being forced to generate fixed directory trees using part of a file collections semantics as directory names. The metadata and virtual filesystem play together here allowing you to geospatially tag both your digital pictures, trip plans, and relevent websites and recall these objects in a single virtual directory no matter what their path or URL may be.

There is also a Samba VFS module which allows you to expose a libferris filesystem as a Samba share. Kfsmd uses the inotify kernel interface to allow libferris to watch changes made to your kernel filesystem by non libferris applications and update its indexes appropriately. Ferriscreate provides a command line and GTK+2 application for creating "new files" with libferris. With this you can create a new db4 database, dbXML database or fulltext index just as easily as you can make a regular file.

The ego filemanager is a GTK+2 interface built on top of libferris. It provides GTK treeview , gevas/edje and gecko based interfaces and makes extensive use of libferris' clients to provide its functionality.

If you have a project you wish to use libferris with and want extensions made don't hesitate to contact one of the developers to arrange consulting.

For the geeks out there, libferris is a virtual file system (VFS) that runs in the user address space. At the moment libferris is a shared object that each application can dynamically link to in order to see the file system through a nicer abstraction.

New additions to the XML module allow for data to be converted from one format to another by the VFS for you. To copy data to an XML file:

fcreate --create-type=xml --rdn=2.xml root-element=fred /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.xml/fred

To copy data to a db4 file

fcreate --create-type=db4 --rdn=2.db /tmp
gfcp -av Makefile.am --dst-is-dir /tmp/2.db

Ferris presents a C++ interface that makes heavy use of the STL and IOStreams. Currently ferris has two main internal abstractions: Context and Attribute. A context is much like a traditional file or directory in a file system, the major differences being that a context can have both byte content (like a file) and subcontexts (like a directory). An attribute is a chunk of metadata about a context. Contexts can have many attributes.

Some attributes may be large, for example a base 64 encoded version of the context's content (133% context size). On the other hand an attribute can be small, for example the file size is exposed as an attribute.

Access to all contexts and attributes is performed by first requesting either an IStream or IOStream for that context or attribute. In this way the same context/attribute can be open many times at the same time, just like normal kernel based IO.

Ferris uses Loki from "Modern C++ Design" by Alexandrescu. Most objects use automatic garbage collection based on the SmartPtr template class from Loki. Where possible objects in ferris use a FerrisRefCounted policy to provide COM like intrusive reference counting. This style is used for Context, Attribute and special wrappers of IOStreams that are provided. IOStreams are wrapped to provide a more flexible API than could be offered using references to IOStreams.

There are also new stream classes provided, for example NullStream and LimitingStream. Templates are provided to make SmartPtrs to standard IOStreams act just like the underlying stream would, for example, one can have SmartPtr ss; ss >> stringObj; and does not have to dereference the SmartPtr to use standard IOStreams extractors or inserters.

Ferris uses GModule from glib2 to dynamically load both context and attribute classes at run-time. This way resources are conserved until they are needed. The native file system context is statically linked to ferris at present. When loading either context's or attribute classes ferris uses a double dispatch factory method. Put simply this means that for each plugin there are two libraries, one that tells ferris if the main one really needs to be loaded or not. Using this scheme ferris can load all the meta factory classes at any time and use these very small meta factories to check if the main factory can create objects that are going to be useful.

This scheme is of great use for attribute classes. Attribute classes take a context and can "generate" attributes from the context. An example of this sort of class would be a MD5 or Base64 attribute. Both can be generated from the base context. More interesting attributes are PCM audio and RGBA-32bpp image data. By using the double dispatch factory ferris can handle a great deal of attribute generators and load them on demand.

Ferris currently can decode mp3, read id3 tags, decode many image formats and break some animation formats into frames. This makes ferris a solid starting point for multimedia applications.

Ferris will automatically mount sub file systems for you. Examples of a sub file system include a Berkeley database or XML file. For example it is possible to read a context such as /tmp/myxml.xml/mynode. Using this automatic mounting the differences between storage formats effectively disappear. To a ferris enabled application loading data from a native disk file, a Berkeley database, and XML file, or mbox file appear to be the same. This allows the user of the application to choose the correct storage for the data at hand.

It is planned to move to a microkernel architecture in Version 2.1 of ferris. I choose 2.1 so that ferris does not fall into version 2 syndrome.

What's New in This Release:
Updates were made for building with more recent libferris 1.1.96+.
The ability to ignore the append open flag was added, which is needed for Google Earth virtual kml files on xstlfs://.
ferrisfuse 0.0.2 supports different languages (including english). It works with Linux.

Downloading ferrisfuse 0.0.2 will take if you use fast ADSL connection.

Leave a comment




(optional)

What is 7-3?




0 comments


Add to

 Del.icio.us   Digg It   Furl   YahooMyWeb   Blinklist
 

ferrisfuse Version History

Product Date Added
ferrisfuse 0.0.2 2008-06-04 22:23:39


Related Software

Stella
From category: Emulators
Stella is a multi-platform Atari 2600 VCS emulator released under the GNU General Public License (GPL)....
USB Server
From category: Networking
USB Server allows you to share and access USB devices over local network or Internet! It is easy to do!...
avpmilter 0.2-2
From category: Monitoring
avpmilter 0.2-2 is monitoring software developed by Vadim V Zotov. avpmilter is a sendmail milter interface to the Kaspersky antivirus daemon. Avpmilter gets virus scan result and tells sendmail...
DirectX support for Wine 2005-06-13
From category: Emulators
DirectX support for Wine 2005-06-13 is emulators software developed by Oliver Stieber. DirectX support for Wine project enables DirectX 9 support for Wine, which is useful for games and 3D graphics...
GNU FreeIPMI
From category: System-Administration
GNU FreeIPMI project provides "Remote-Console" (out-of-band) and "System Management Software"....
cingb
From category: Emulators
cingb 0.29 is emulators software developed by Cinek. cingb project is a Gameboy emulator. It plays Gameboy and Gameboy Color ROMs, includes a debugger for step-by-step analysis of Gameboy pr...
Filesystem in Userspace
From category: Filesystems
Filesystem in Userspace 2.6.1 is filesystems software developed by Miklos Szeredi. FUSE can implement a fully functional filesystem in a userspace program. Here are some key features of \"Fi...
Asterisk Live CF card b-01
From category: Operating-Systems-Other
Asterisk Live CF card b-01 is operating systems other software developed by Asterisk Team. Asterisk Live CF card is, clearly, a compact flash install of asterisk that will give you a complete, runn...
filtergen
From category: Monitoring
filtergen 0.11 is monitoring software developed by Matthew Kirkwood. filtergen takes a high-level langauge and compiles it into packet filtering rules for a variety of packet filters. Iptables, ipc...
FK
From category: Monitoring
FK 0.6.7 is monitoring software developed by Matthew, Ian Lynagh. fk is a free software replacement for the TIS fwtk. A while ago, I decided that the world needed a free software proxy firewall ki...
Cooperative Linux
From category: Operating-Systems-Other
Cooperative Linux 0.6.4 is operating systems other software developed by Dan Aloni. Cooperative Linux is the first working free and open source method for optimally running Linux on Microsoft Windo...
eltclsh
From category: Shells
eltclsh 1.5 is shells software developed by Anthony Mallet. eltclsh (editline tcl shell) is an interactive shell for the TCL programming language. It provides command line editing, history browsing...
NS2Html
From category: Networking
NS2Html is a tool created to convert the config file extracted from Netscreen devices into friendly HTML rulebases....
Ark Linux Live 2006.1
From category: Operating-Systems-Linux-Distri
Ark Linux Live 2006.1 is operating systems linux distri software developed by ArkLinux. Ark Linux Live is a Live CD edition of Ark Linux. Ark Linux is a beginner-friendly Linux distribution meant p...
Covert Linux Starter Kit
From category: Boot
Covert Linux is a technology of instalation for Linux without repartition the disk and running from native system....
 

Top Downloads

 
1. Canon PIXMA iP1200 Printer Driver
2. Canon PIXMA iP1000 Printer Driver
3. Realtek ALC/ 262/ 265/ 268/ 660/ 861/ 880/ 882/ 883/ 885/ 888 Audio
4. Canon PIXMA MP210 MP Drivers
5. Lite-On Cd-Rw LTR-48327S firmware
6. MediaLink
7. Asus EZVcr II
8. Canon PIXMA MP460 MP Drivers xp64
9. Canon PIXMA iP1600 Printer Driver
10. Canon PIXMA iP1300 Printer Driver c
11. Genius Eye 110 Webcam Driver
12. Mercury PI865GVM7 V
13. Canon i550 Printer Driver
14. dmg2iso
15. ENMIC 8TAX3+ Bios
16. BSD Subsystem
17. Adult P2P!
18. Realtek High-Definition Audio Driver
19. psx4iphone
20. Sony CRX-830E firmware

DownloadTube Editor Reviews

 
1. zMailGuard
zMailGuard is a powerful tool for the e-mail users who want ...
2. Type4Me
Type4Me is a tool for the webmasters and chat users who want...
3. MP3Guard
This program is for the musicians who want to make money sel...
4. eBookGuard
eBookGuard is for the authors who want to make money selling...
5. JpegGuard
JpegGuard is a smart tool for the JPEG users who want to kee...
6. ShareGuard
ShareGuard Copy Protection For Shareware Developers - this p...
7. Free Download Manager - WeBBusterZ
Useful if you want to stop and resume your downloads wheneve...
8. S&THex Shell and Tube Heat Exchanger Design
Shell and Tube Heat Exchanger Design (S&THex) is a very easy...
9. Pumping Power Calculator
A simple fluid pumping power calculator. Just enter the m...
10. Interpolation Calculator
Calculate the linear interpolation with this simple tool....

Software Reviews Full List



Recent Blog Posts

 
1. An Introduction To Joomla! Templates Creation With Adobe Dreamweaver CS3
Joomla! is a content management system and framework with a ...
2. Two New Firefox Stable Releases Are Available For Free Download: Firefox 3.0.2 and Firefox 2.0.0.17
Recently, two Firefox stable releases for Windows, Mac OS, a...
3. How To Deploy A Linux LiveCD on Windows Using MobaLiveCD
There are many ways to test a certain Linux distribution on ...
4. Ever Needed A Free Video Converter And You Just Couldn’t Find It? Here’s Our Suggestion.
With so many different video (or even audio) converters arou...
5. Top 101 Most Downloaded Windows Software: Free Demo Movies and Download Links
We often have to decide if we should download the latest v...
6. A New Powerful Virus Could Affect Millions of WordPress Blogs
The WordPress blogging platform powers millions of web...
7. Google Chrome – It’s Finally Here. Will A Revolution Begin?
First, it was the rumors. Then, Google announced it official...
8. An Amazing Free Document Processing Software: LyX
The documents management task could be difficult in absence ...
9. DownloadTube Toolbar is Available For Free Download
Recently, we have made available for free download the Dow...
10. A Revolution in Web Browsing: The New Firefox 3.1b1 Already Beats All Speed Records
The latest beta1 release of Mozilla Firefox 3.1 shows majo...

Last 20 Scripts

 
1. Step Carousel Viewer
Step Carousel Viewer allows you to displays images or HTML r
2. JQuery.AddToList
JQuery.AddToList dynamically adds a new option to a select l
3. Tooltip jQuery Plugin
Tooltip jQuery Plugin allows you to display a customized too
4. jquery-ahover
jquery-ahover provides animated transitions between hovered
5. akModal
akModal is a jQuery plugin that provides a simple alternativ
6. jquery-asmselect
jquery-asmselect is a progressive enhancement to "select mul
7. Treeview jQuery Plugin
Treeview jQuery Plugin transforms an unordered list into an
8. Accordion jQuery Plugin
Accordion jQuery Plugin helps you to define an expandable/co
9. Autocomplete
Autocomplete is a jQuery plugin that allows you to create an
10. Autotab
Autotab is a jQuery based auto-tabbing and filter plugin.
11. BDC DrillDown Menu
BDC DrillDown Menu script helps you to implement in any webs
12. jQuery Bookmark
jQuery Bookmark script is a jQuery based social bookmarking
13. TwinHelix Forums
TwinHelix Forums Perl script allows you to deploy a simple b
14. IE PNG Fix Script
IE PNG Fix Script adds near-native PNG support with alpha op
15. CodeTrimmer
CodeTrimmer is a JavaScript code optimizer that will improve
16. Object Model Browser
Object Model Browser is a HTML file that can view and alter
17. AddEvent Manager
AddEvent Manager can easily add multiple event handlers to a
18. DragResize
DragResize is a JavaScript library that lets you easily impl
19. HTMLHttpRequest
HTMLHttpRequest script dynamically loads remote documents fo
20. Text Colour Cycler
Text Colour Cycler periodically replaces the content of a DI