NetSurf has had a memory based source object cache (the low level cache) for a long time. It was implemented by John-Mark Bell in a pretty elegant way and continues to serve the browser well.
I have recently extended the low level cache with the ability to use a persistent backing store. What this means in practical terms is that the browser can now keep source objects (html, images etc.) across sessions. This avoids the need to re-fetch these objects from the network and hence improves page load times. This requires front end maintainers to pass the basic setup parameters to netsurf_init() along with some simple configuration at build time. I am currently waiting to see if this works correctly on non POSIX platforms (those that do not use / as directory separator) which may require some improvements. The caching may be user disabled by simply setting the disc cache size to 0. The default parameters of the generic file based backing store mean it consumes resources appropriate for larger system. These values may need tweaking by frontend maintainers as they see fit. The documentation in Docs/source-object-backing-store will be of interest. One note here is that front end maintainers are free to implement a backing store more appropriate to their needs if the default file based one proves unsuitable. -- Regards Vincent http://www.kyllikki.org/