Top post, sorry.... I'd recommend you do not implemement a FS on top of SQLite, not least because SQLite cannot currently handle BLOBs, and you would need to encode/decode data written/read into text.
SQLite itself requires at least a temporary file for transaction support. IMHO, You'd be better off porting an existing embedded FS from another system, or implementing your own. Have a look at: http://www.linuxjournal.com/article.php?sid=4678 for issues about regular FS on flash devices. Christian On Mon, 29 Mar 2004, Amit Upadhyay wrote: >Hello, > >I am writing an OS for my embedded system based device, and was wondering >if I can use sqlite to replace the filesystem completely! It is going to >have 8/16 MB of flash, but I may be a bit short on RAM ~500K or so [there >is another model that will have 32MB RAM, but I would prefer a solution >that can work on both]. > >I will write special fopen/fread/fwrites to let it access a sequential >block of memory, manage that block. Application programs will then use >sqlite C API to access any memory. > >First thing I need to know if it uses temporary files? VACCUM operation >may require it, but I am willing to snip that feature. Then I don't know >how will I know how much of FLASH memory is free/busy, but I may go the >dirty way of querying and summing to see how much memory is actually in >use to come to those figures [or get access to free-list somehow]. > >Second consideration is the RAM usage, does SQL-lite load everything in >RAM and work from there or it only uses RAM for unsaved information only. >Or if there is some perfermance trade-offs I can do to reduce RAM >requirements if former is the case. > >I am not interested in threading issues while writing, for reading FAQ >says its thread safe so its fine. > >TIA and best wishe. > > ---------------------------------------------------------------------- /"\ \ / ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL X - AGAINST MS ATTACHMENTS / \ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

