The allocation operations code manages a collection of pages
for each database and keeps track of which pages in a database have already
been used, for what purpose they have been used, and how much space is
available on each page.
Each database is a collection of 8-KB disk pages that
are spread across one or more physical files.
SQL Server uses 13 types of disk pages. data pages, two types of LOB pages, row-overflow
pages, index pages, Page Free Space (PFS) pages, Global Allocation Map and
Shared Global Allocation Map (GAM and SGAM) pages, Index Allocation Map (IAM)
pages, Bulk Changed Map (BCM) pages, and Differential Changed Map (DCM) pages.
All user data is stored on data or LOB pages, and all index
rows are stored on index pages. PFS pages keep track of which pages in a
database are available to hold new data. Allocation pages (GAMs, SGAMs, and
IAMs) keep track of the other pages. They contain no database rows and are used
only internally. BCM and DCM pages are used to make backup and recovery more efficient.