Fragmentation (information technology)

from Wikipedia, the free encyclopedia

In information technology, fragmentation refers to the breaking up of a storage space. In contrast to internal fragmentation ( scrap ), it is sometimes also referred to as external fragmentation .


In many software systems, memory ( RAM , hard disk space, etc.) is requested by programs as part of a dynamic hardware resource management system (e.g. to store and hold data there) . These requests are served (e.g. by the operating system ) by selecting a sufficiently large memory area from the available resource pool and making it available to the requesting program. This memory area can later be returned and is then available for new requests.

In other words, a memory space consists of areas that are currently in use and areas that are not in use. If the areas used are not continuously one behind the other, but there are still pieces of free memory ( fragments ) in between, one speaks of fragmentation or of fragmented memory .

Fragmentation can lead to the failure of a memory request (and thus potentially to malfunctions or even termination of the program). This happens when an area to be newly allocated is larger than the largest free fragment. Although in this scenario the sum of the sizes of all unused fragments is at least as large as the area to be allocated, i.e. enough memory is available in total, the request cannot be served at all or not at all with high performance. So there are memory fragments that cannot be used even though they are not in use.


A well-known example is the fragmentation of file systems , which also has a performance disadvantage, since with hard disks several, scattered accesses require more time than sequential access.

Information technology memories that can be affected by fragmentation include: a .:

Possible solutions