Technical Specification
Description
OS Edition consists of the system-level drivers and user-mode API.
Drivers
The drivers are virtual disk driver and file system driver.
Virtual disk driver creates a virtual storage device, which emulates a physical storage.
File System Driver maps SolFS file system to the virtual storage device.
The drivers work on system level (kernel-mode on Windows and a system DLL on Windows Mobile) and turn SolFS storage into a "real" disk device with its own file system.
The "real disk device" is accessible in read-only and/or read-write mode by any application which uses system file management API.
The drivers offer certain features, specific to its functionality.
For example, you can make the mounted disk visible to the user or hide it from the user.
You can grant access to your storage to only selected applications, thus providing additional level of data security.
SolFS drivers can use either a file on existing file system or a partition on the disk as a backend media for storing information.
In other words, you can format a media (partition on the disk, a flash card) as a SolFS disk.
Or you can just create a file which will hold the data.
The drivers also support callback mechanism, which lets you keep your data storage wherever you want (i.e. on remote computer, in memory or database record etc.).
The unique feature of SolFS is its resizable nature.
When SolFS storage is mapped to a file (or other resizable media), SolFS virtual storage uses only the amount of space, that is needed to keep the data.
So, instead of allocating a several-gigabyte-large storage (to ensure that it will be enough for holding all the data you have), you allocate a small file which is just several kilobytes large.
And the storage file will be resized when necessary.
If you remove the files from the storage, the storage is shrinked automatically.
User-mode API
User-mode API is very similar to the one of Application Edition, and introduces just about ten new functions, specific to driver management and storage mounting operations.
The API is needed only for driver and storage manipulation.
All file operations can be performed using system file management API or framework-specific classes.
For example, you mount the storage using API functions, then write file using FileStream class in .NET or TFileStream in Delphi or CreateFile() API when working with WinAPI.
For compatibility with Application Edition, OS Edition API also provides SolFSStream class, which can be used to access the data on the device.
Miss a feature? Tell us about your idea using Wish List.
Packages
- Professional - all features listed below
- Lite - simple container for your files with whole-storage encryption
For detailed information between differences between packages see SolFS packages comparison chart.
Features
- Major functions:
- Transparent strong encryption on both per-stream basis and encryption of the whole storage.
Encryption is done using AES and SHA (HMAC) algorithms with 256-bit key and can be applied even to single stream within a file.
The key is derived from the password by adding a salt to prevent attacks.
User-defined encryption is supported.
- Transparent compression on per-stream basis.
Encryption and compression can be applied to a stream at the same time.
By default ZLib is used and you can plug your own compression if needed.
- Journalling support (optional).
This feature guarantees, that if write operation was interrupted, data integrity is not compromized.
- Capacity:
- Support for stream size of up to 128 Terabytes (ex. 140 735 340 806 145 bytes) gives you virtually unlimited possibilities for storing large amounts of data on physical media.
- Maximum storage size of 256 Terabytes (ex. 281 474 976 645 120 bytes). Please contact us if this is not enough for your task.
- Data organization:
- Support for multiple alternate data streams for files.
Streams can be found in NTFS and MacOS file systems.
They let you keep additional information of data revisions within the same file.
- Support for Symbolic Links.
- Page (cluster) sizes from 256b to 64Kb are supported.
- Very long file names and hierarchies of any depth are supported.
- File and directory names are stored in Unicode (UTF-16).
- Support for fixed-sized and resizable storages.
- Support for both standard and application-defined file attributes.
- Custom tags can be read and written.
Tags are small chunks of information (not larger than the page size), associated with the directory, file or individual stream.
- Storage metadata lets you save the information about the storage itself.
- Data operations:
- Support for all file/directory operations including wildcard-based search (searching for file names that match certain mask).
- Check-and-repair and compact operations are supported for data recovery and performance improvement.
- Platform features:
- Possibility to keep the storage not only on physical disk drive, but in memory, database or anywhere else you want.
- Possibility to work with as many storages at the same time as you need (limited by system resources).
- Thread-safety. This means that you can perform several operations on different files in storage in different threads and storage correctly handles all operations.
- Virtual Device features:
- Creation of virtual disks which are available as drive letters.
- Creation of virtual disks which are available via UNC path (\\.\SolFSDrive) and are not visible to the user in Explorer.
- Possibility to restrict access to the storage and provide such access to applications based on their names or Process IDs.
Miss a feature? Tell us about your idea using Wish List.
Supported platforms
- Windows:
- Windows 2008 Server R2 (32-bit, 64-bit AMD64 and 64-bit Itanium)
- Windows 7 (32-bit, 64-bit AMD64 and 64-bit Itanium)
- Windows 2008 Server (32-bit, 64-bit AMD64 and 64-bit Itanium)
- Windows Vista (32-bit, 64-bit AMD64 and 64-bit Itanium)
- Windows 2003 Server (32-bit, 64-bit AMD64 and 64-bit Itanium)
- Windows XP (32-bit and 64-bit AMD64)
- Windows 2000
- Microsoft .NET Framework on Windows:
- .NET 4.0 (32-bit and 64-bit)
- .NET 3.5 (32-bit and 64-bit)
- .NET 3.0 (32-bit and 64-bit)
- .NET 2.0 (32-bit and 64-bit)
- .NET 1.1
- Linux:
Public preview version is available.
- FreeBSD:
Public preview version is available.
- MacOS X:
Public preview version is available.
Development tools
- .NET API:
- Visual Studio 2010
- Visual Studio 2008
- Visual Studio 2005
- Visual Studio.NET 2003
- CodeGear Prism
- CodeGear RAD Studio 2007
- Delphi 2007
- Delphi 2006
- Delphi 2005
- C++ API:
- Visual Studio 2010
- Visual Studio 2008
- Visual Studio 2005
- Visual Studio.NET 2003
- Visual Studio 6 / Visual C++ 6
- CodeGear RAD Studio 2010
- CodeGear RAD Studio 2009
- CodeGear RAD Studio 2007
- C++Builder 2010
- C++Builder 2009
- C++Builder 2007
- C++Builder 6
- C++Builder 5
- C++Builder 4
- gcc
- VCL API (VCL units are linked into the application without any external DLLs):
- CodeGear RAD Studio 2010
- CodeGear RAD Studio 2009
- CodeGear RAD Studio 2007
- Delphi 2010
- Delphi 2009
- Delphi 2007
- Delphi 2006
- Delphi 2005
- Delphi 7
- Delphi 6
- Delphi 5
- Delphi 4
- C++Builder 2010
- C++Builder 2009
- C++Builder 2007
- C++Builder 6
- C++Builder 5
- C++Builder 4
- DLL API: any development tool that supports import of exported DLL functions.
Miss a feature? Tell us about your idea using Wish List.
To request more details please use our feedback form
or Web-based Helpdesk system.
Ready to try?
Download your own copy to try it for free.
Ready to pull the trigger? Refer to the Prices and Ordering page for complete licensing information.
|
Clients say
...Lots of smart ideas without sacrificing reliability...
Latest version
1.5.94
Released 24 November 2011
|