OEM Parameter block
The OEM block not only stores data about the filesystem, it also contains information about the physical hard drive geometry, or about how files are laid out on your hard drive or SSD. This was used by older BIOSes to determine how a hard drive was set up from the manufacturer. As a good primer for explaining hard drive geometry, I can suggest this chapter on pcguide.com , and this one
Important geometry parameters I can see are:
* bpbBytesPerSector: Which describes the sector size. This is basically the smallest unit of data that anything can write to the drive. It's usually 512 bytes, but newer large drives may use 1024 byte or larger sectors.
* bpbSectorsPerCluster: Which indicates how large a cluster is in # of sectors. A cluster is the smallest unit of data the filesystem can manage
* bpbSectorsPerTrack: The number of sectors per physical track on a hard drive
This method is, however an obsolete method of determining the size of a hard drive. Since the late 90s, Logical Block Addressing has taken over, which in itself is basically a direct method of counting and mappping every sector or block on a hard drive or SSD. However BIOSes and modern OSes still use it for legacy purposes.
To answer your Question # 3, FAT is the very first filesystem written for IBM-compatible PCs. This is likely a throwback to FAT 12 and 16 and earlier implementations of the OEM parameter block specification. 242
As with many other HDD-related quirks in the IBM/x86 family it's likely that it's been left there for legacy purposes. Earlier FAT implementations (and fat12, still) could only write a single partition to a disk. Also, FAT partitions usually contain 2 allocation tables, the main table and a backup table for integrity and error-correction purposes.
What is a filesystem?
Basically a means of getting disorganized data assigned into a system that can be understood by us, as well as the computer. Your assumption of it being a "coordinate system" for files is not inaccurate.
A very basic filesystem has to do the following:
* Map a given file to a set of sectors/clusters
* Provide a way to distinguish one file from the next (eg. start and end address)
* Provide a way for the user to locate needed data (eg. by a filename)
* Provide a way for the rest of the hardware and software to easily understand how data is to be read and written according to hardware and OS rules (abstraction layer, API, or what you prefer to call it nowadays)
* Provide a way to protect data and indicate that a given section of the HDD/SSD is occupied and other basic information or limitations (eg. write protect bit, file size, file attributes)
* Provide a way to remap data, so that the medium is used most effeciently
Optionally a file system also provides extra aids for improving reliability (by saving important data in multiple places or providing error correction mechanisms), speed (eg. by using search indexes), security (encryption, permissions) or user experience (Sorting files by using folders or providing easy access by using shortcut files or symbolic links)
It is very important to know, for all intents and purposes, that the way your file manager shows you the files is NOT the way the data is actually laid out on the drive. An effecient filesystem has to be able to remap data. For more on that, I suggest you read up on this very informative chapter 77