It occurs when memory becomes divided into smaller, unused spaces, causing inefficient memory use by a program.