id summary reporter owner description type status priority milestone component version resolution keywords cc field_blocks field_dependson field_seealso 59 FAT server improvement: FAT12, FAT32, FAT64 Martin Decky "Implement support for FAT12, FAT32 and FAT64 file system formats in HelenOS. Details:: Extend the FAT file system server and the associated utilities such as mkfat and mkfat.py to support variants of FAT other than the currently supported FAT16. Notably FAT12 and FAT32, perhaps also FAT64 (ExFAT). In case of FAT12, the change will be rather straightforward as it should be sufficient to make the current FAT server understand the 12-bit file allocation table. In case of FAT32, it may become necessary to reconsider the current approach of assigning file system node indices due to much larger maximum number of files that can be stored on FAT32. The effort needed to support FAT64 may be equal to writing the entire file system server from scratch. What Gains and Benefits will this bring?:: The current FAT file system server cannot deal with file systems formatted as FAT12, FAT32 or even FAT64. Especially the FAT32 format can be commonly found on contemporary removable media such as flash disks. By improving support for other FAT formats, HelenOS will be able to mount them and access data stored on them. Difficulty:: Depending on the chosen variant, this project's difficulty may range from easy (FAT12), to medium (FAT32) to hard (FAT64). The FAT64 variant can be made easier if only read-only support is to be delivered. Required skills:: A successful applicant will have good skills of programming in the C language and also the ability to program in a multi-server environment, which includes communicating using HelenOS IPC. Familiarity with any variant of FAT is an advantage. Documentation:: - [wiki:DeveloperDocs#FileSystems] - [http://www.ecma-international.org/publications/standards/Ecma-107.htm Standard ECMA-107] Volume and File Structure of Disk Cartridges for Information Interchange - [http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx Microsoft EFI FAT32 File System Specification] - [http://en.wikipedia.org/wiki/ExFAT#External_links Wikipedia page on exFAT] - [http://trac.helenos.org/browser/mainline/uspace/srv/fs/fat/fat.h#L145 Note] on assigning file system node indices in our [browser:/mainline/uspace/srv/fs/fat/fat.h fat.h] Possible mentors:: HelenOS Core Team, Jakub Jermar" enhancement closed minor 0.5.0 helenos/fs/fat mainline fixed fs, fat, gsoc11 jakub@… #58