just wondering about this....
Is There any other file system for the SD card that i can use instead of fat?
Please Help
just wondering about this....
Is There any other file system for the SD card that i can use instead of fat?
Please Help
no
you might look at the implementation of the sd libs and
you will gain some but lose other things...
I said no because I assumed you meant a common popular file system.
The standard definition of file system is something like this from the computer dictionary:
Computing Dictionary
file system definition
(FS, or "filesystem") 1. A system for organizing directories and files, generally in terms of how it is implemented in the disk operating system. E.g., "The Macintosh file system is just dandy as long as you don't have to interface it with any other file systems".
2. The collection of files and directories stored on a given drive (floppy drive, hard drive, disk partition, logical drive, RAM drive, etc.).
There is no "raw file system", there is a "raw device". A file system must have at least a root directory and files.
I considered a number of file systems for Arduino. I looked at file systems supported by Windows, OS X, and Linux.
NTFS, exFAT, hfs+, ext2, ext3, and ext4 are just too complex to implement on an Arduino Uno. Also some are proprietary.
I don't see much advantage of implementing a little used file system.
(sorry I meant raw device)
agree, the biggest advantage of FAT is that almost any device/os supports it.
The only advantage of using a "raw device" is saving some flash program space. For about 25 years RTOSs and the POSIX real-time standard have supported creation of contiguous files. Some extra program space is required for code to create a contiguous file.
Contiguous files can be written and read using the raw API on the embedded system. The advantage is that data can also be accessed using the file API. This allows easy access on other operating systems such as Windows, Linux, and Macs.
SdFat supports this mode and many users with high performance requirements use this method. SdFat's 512 byte block buffer is accessible so little extra RAM is required. The RAW API requires data to be written and read in 512 byte blocks.
The SdFat RawWrite example demonstrates this method.
The API to create a contiguous file is:
file.createContiguous(dirFile, filename, fileSize);
FAT is limited to a max file size of 4 GB which is not often a problem on Ardiuno. FAT is well adapted to SD cards. It is the standard SD file systems and SD flash controllers are designed to optimize performance with FAT.
You should format SD cards with the SD association's formatter since it optimizes use of the large SD flash blocks by aligning file structures on natural flash erase boundaries. This can improve write peformance.
Ok thanks