The Attributes is an 8–Bit binary coded field. The following table tells about the Status for flag of attributes for the given file:
Attribute Bits |
Attribute |
Bit |
Binary |
Hex |
Read Only File Flag |
0 |
.......? |
01H |
Hidden File Flag |
1 |
......?. |
02H |
System File Flag |
2 |
.....?.. |
04H |
Volume Label Flag
(Indicates that the entry is a volume label) |
3 |
....?... |
08H |
Sub–directory
(in same format as directory) |
4 |
...?.... |
10H |
Archive Bit
(File Modified Since Last Backup) |
5 |
..?..... |
20H |
Reserved (Contains 0) |
6 |
.0...... |
- |
Reserved (Contains 0) |
7 |
0....... |
- |
One File may have multiple attributes. For example, a single File may be a Read–Only as well as Hidden–File or a single file may have both attributes, The System–File and The Hidden–File. (See the Example given next for the Encoding of Directory Entries).
Time and Date is a specially coded field of 32–Bits (16-Bits of Time and 16-Bits for Date). The division of these Bits encoding to compose the Time of created or last updated and the Date of created or last updated for a File, has been given in the Following table:
The DOS Date-Time format |
Name |
Size (Bits) |
Value |
Hour (24-hour) |
5 |
0..23 |
Minute |
6 |
0..59 |
Seconds (Seconds in increment of 2) |
5 |
0..30 |
Bits Distribution For Time |
17th Byte |
16th Byte |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
H |
H |
H |
H |
H |
M |
M |
M |
M |
M |
M |
S |
S |
S |
S |
S |
|
Year (from 1980 - meaning year=1980 + Value) |
7 |
0..127 |
Month |
4 |
1..12 |
Day |
5 |
1..31 |
Bits Distribution For Date |
19th Byte |
18th Byte |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
M |
M |
M |
M |
D |
D |
D |
D |
D |
|
Total size |
32 Bits |
|
The entry for Time of Create or Last Update of file, which is the 16th and 17th Byte in the directory entry, has the format given in the above table. The encoding is as follows:
- H is binary number for hour, that could range from 0 to 23
- M is a binary number for minute, that could range from 0 to 59
- S is a binary number for seconds in 2 seconds increment
The entry for Data of Create or Last Update of File, which is the 18th and 19th Byte in the directory entry, has the following format:
- Y is binary number between 0 to 127or year 1980 to 2107
- M is binary number for month, this could range from 1 to 12
- D is a binary number for date, this could range from 1 to 31
This directory entry is linked with the FAT entry based on the first cluster value. Once the DOS has the starting cluster value of any file from the Directory, the DOS can find out the complete file using the FAT. The Entry Cluster in the chain is the first cluster that makes up the file. If the attributes’ directory flag is set, this field points to a new directory entry.
The entry of Size of file is 4 Bytes. By this we can calculate, how FAT32 supports the maximum size of a file up to 4,294,967,295 Bytes which is about 4 GiB. The 4 Bytes have 32 Bits and the maximum possible File size composed by any 32–Bit Binary could be,
= 11111111 11111111 11111111 11111111 (B) Bytes
= 4,294,967,295 (D) Bytes
~ 4 GiB
Thus the FAT32 supports the maximum File size up to 4 GiB.
|