Edk2 fat driver - tianocorecn/tianocorecn.github.io GitHub Wiki

Welcome to the EDK II FAT-Driver PROJECT, a project for the EDK II FAT32 File System Driver, which is based on Microsoft's FAT32 File System Driver Specification. The EDK II Fat Driver is separate from the EDK II project only because the terms of use of the code are unique, requiring us to keep it in a separate code repository (the terms are basically that code developed using the FAT32 Specification must be associated with EFI). The EDK II Fat Driver is structured as a Package that fits into the EDK II's overall build and packaging system.

This project is a subproject of the EDK II project, and is only used to house the FAT32 code repository. All development tools in the EDK project are integrated with this project, so come here only to update the Subversion repository or to get access to the latest code snapshots. Use the EDK project to post issues, join mailing lists, participate in discussion forums, etc. In short, consider them one project with two code repositories. Working with the FAT32 Code

The FAT-Driver project is sponsored by Intel and released under the BSD License with one additional term. Before using the code please read the license below, paying special attention to the "Additional Terms" section:

Enhanced-FAT-Driver

The Enhanced-FAT-Driver is a new implementation of the FAT32 filesystem. It is a near complete rewrite of the original FAT-Driver with over 80% of the code being specific just to the Enhanced-FAT-Driver. The new driver is faster and takes up only 66% of the original FAT-Driver's memory footprint. What makes the Enhanced-FAT-Driver better?

  • Better Architecture
    • More modular design thanks to object oriented and hierarchical design
  • Logic directory approach used in place of the physical directory
  • Easier to maintain and debug
  • 80% of the code was completely rewritten to make it smaller and faster
  • Higher Performance
    • A cache mechanism to cache recently opened directories
  • A more efficient 8.3 name generation algorithm
  • 10x, 100x or even 1000x acceleration when creating thousands files/directories
  • Smaller Size
    • Simplified the controller name from "FAT File System[FAT16] 200MB" to "FAT File System"
  • Succinct coding style
  • 2/3 the image size of the original FAT-Driver
Other Common Links and Downloads
⚠️ **GitHub.com Fallback** ⚠️