Interne Fragmentierung

Verschwendung innerhalb des allozierten Speichers

Als interne Fragmentierung oder Verschnitt – bei Festplatten Slack Space[1] – wird in der Informatik der Effekt bezeichnet, dass manche Speicherblöcke bei der Aufteilung von Daten nur zum Teil gefüllt werden können.

Ein weiterer Effekt, der zu ineffizienter Speicherverwendung führt, ist die externe Fragmentierung.

Beschreibung Bearbeiten

Zur Speicherverwaltung benutzen Computersysteme verschiedene Methoden ihn einzuteilen. Dies bezieht sich auf flüchtigen (z. B. Arbeitsspeicher) wie auf persistenten Speicher (z. B. Festplatten). Alle Methoden nutzen Segmentierung, Seiteneinteilung oder eine Kombination aus beiden, um den Speicher möglichst effizient einzuteilen.

Bei der Seiteneinteilung wird der Speicher in Seiten fester Größe eingeteilt. Sobald ein Programm Speicher beantragt (alloziert), werden so viele Seiten reserviert, dass die Summe ihres Speichers größer oder gleich dem beantragten Speicher ist. Ist der reservierte Speicher größer als der beantragte, so bezeichnet man diese Differenz als interne Fragmentierung: dieser Verschnitt liegt innerhalb des reservierten Bereiches, typischerweise am Ende.

Typische, von interner Fragmentierung betroffene Speicherressourcen in der Informationstechnik sind u. a.:

  • Arbeitsspeicherallokierung vom Betriebssystem, feste Blockgrößen
  • Dateierstellung, Dateisysteme und Festplatten besitzen feste, einige kByte große Cluster
  • IP-Adressen können ebenfalls nur in Blöcken bestimmter Größe reserviert werden (deswegen sind viele IPs zwar reserviert, aber nicht in aktiver Verwendung). Dieser Effekt trägt zum IPv4-Adressenmangel bei.
  • Englischer Text wird oft mit einem Byte pro Buchstabe gespeichert, obwohl in ASCII-Zeichenkodierung das höchstwertigste Bit jedes Bytes 0 ist. Eine Reservierung von 7 Bit wäre funktional ausreichend, also existiert ein Verschnitt von einem Bit pro Buchstabe.

Beispiel Bearbeiten

Das Betriebssystem verwaltet den Arbeitsspeicher in Seiten mit einer Größe von 4 Kilobyte. Ein Programm beantragt 5 kByte; daraufhin reserviert das Betriebssystem 2 Seiten (= 8 kByte). Die interne Fragmentierung beträgt dann (8 - 5) kByte = 3 kByte.

Einzelnachweise Bearbeiten

  1. Jennifer Bayuk: CyberForensics: Understanding Information Security Investigations. Springer Science & Business Media, 2010, ISBN 978-1-60761-772-3 (google.de [abgerufen am 17. März 2017]).