Linux's first filesystem used on hard disk was the Minix filesystem there were different releases of this filesystem, which grew in features.
Linux native filesystem that became popular after Minix was called the extended filesystem or ext. Version 2 of this filesystem was the mainstay in Linux for many years throughout the 2.0 and 2.2 kernels.
The original Minix filesystem was a generic Unix filesystem supporting 14 character filenames and no symbolic links (soft links). Later Minix filesystems supported up to 30 character file names.
The extended 2 or ext2 filesystem is based on the generic Unix filesystem structure, as discussed earlier, and it also uses some of the mentioned enhancements; these are
free blocks bitmap
block groups
extents
data block pre-allocation
ext2 was designed with extensibility and backwards compatibility in mind. This means that newer kernels supporting newer versions of the extended filesystem should always be able to mount and handle older extended filesystems.
The extended 3 filesystem or ext3 adds journaling support to ext2 filesystem. The backwards compatibility of the extended filesystem is notable here, as an ext3 filesystem can be mounted as ext2; this will just cause journaling features to be unavailable.