Overview
[File System]

Introduction

The ATMEL File System is a module optimized for the C51/AVR8/AVR32 chip from ATMEL.
The footprint is very small, many features are included, and specific caches are implemented to optimize the speed.
The particularities of ATMEL File System are the Navigator Identifier, the "file list" and the File index :

Navigator ID

One navigator ID allows to explore a disk or open a file.
If you want to open 2 files at the same time then you must use 2 navigators ID.
If you want to explore 2 directories at the same time then you must use 2 navigators ID.
If you want to explore 1 directory and open 1 file at the same time then you must use 2 navigators ID.
Thus the advantages are :

File List

Two information allow the navigation, the "current folder" and the "file selected".
The "File list" is the list of all folders and all files present in "current folder" like a Windows explorer (the sub folder and sub file aren't included).
The "file selected" is a cursor on the "File list" (The unselect position exists).
When the nav_dir_cd() and nav_dir_gotoparent() routines are called, the "current folder" and "File list" change.

After a nav_partition_mount() :

Example:

// A disk architecture
folder1
|  folder3
|  |  file4
|  file5
file1
file2
folder2
|  file6
file3

// The "File list" provides by the navigator when the "root" is the "current folder"
folder1
folder2
file1
file2
file3

// The "File list" provides by the navigator when the "folder1" is the "current folder" (via nav_dir_cd())
folder3
file5

File Index

A File Index is a small pointer structure which contains a file position.
This structure allows to store a file list in a small memory space, and allows a fast access to the file.
The following routines are used to manage file index : nav_getindex(), nav_gotoindex().

Error control

Many routines return a status TRUE or FALSE.
In case of FALSE status, the fs_g_status contains the error identifier to retrieve more information about the error.
The error list is available here.

Generated on Fri Feb 19 02:29:01 2010 for AVR32 - FAT Services by  doxygen 1.5.5