Ticket #59 (closed enhancement: fixed)
FAT server improvement: FAT12, FAT32, FAT64
| Reported by: | decky | Owned by: | |
|---|---|---|---|
| Priority: | minor | Milestone: | 0.5.0 |
| Component: | helenos/fs/fat | Version: | mainline |
| Keywords: | fs, fat, gsoc11 | Cc: | jakub@… |
| Blocker for: | Depends on: | ||
| See also: | #58 |
Description (last modified by jermar) (diff)
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
-
- DeveloperDocs
- Standard ECMA-107 Volume and File Structure of Disk Cartridges for Information Interchange
- Microsoft EFI FAT32 File System Specification
- Wikipedia page on exFAT
- Note on assigning file system node indices in our fat.h
- Possible mentors
- HelenOS Core Team, Jakub Jermar
Change History
comment:5 Changed 15 months ago by jermar
- Keywords gsoc11 added; suggestion removed
- See also set to #58
- Description modified (diff)
- Summary changed from FAT driver improvement: FAT12, FAT32, FAT64 to FAT server improvement: FAT12, FAT32, FAT64
comment:7 Changed 9 months ago by jermar
- Status changed from new to closed
- Resolution set to fixed
Fixed in mainline,1186.
Note: See
TracTickets for help on using
tickets.
