This may be slightly off-topic for a strictly programming site, but I'm interested in starting a software project or contributing to an existing project that can do what I'm proposing.
Now that SSD storage is becoming more popular, I am more interested in using one in my destop computer. Since they are very expensive per Gigabyte compared to standard drives, I must limit the size of the drive. I want to maximize the use, but can't place all of my data on it.
What I would like to do is use the SSD as an invisible inline cache to the rest of my data without having to explicitly store data on it. As data is read from my normal drive, it is cached to the SSD. All subsequent access to these files will retrieve it from the SSD, and any changes will propagate down to the slower drive. The user would never see the SSD in their list of drives.
In this way, the first time you access a file, it may be slightly slower than usual, but from that point on, it will be much faster. Obviously, after a while the SSD will fill up, and less frequently used files can be released to make room.
Are there any filesystems out there that allow for something like this, or is it feasible have a low-level driver do the work between the OS and the filesystem?