Datenblock

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Speicherblock)
Zur Navigation springen Zur Suche springen

Ein Datenblock (lehnübersetzt aus dem englischen data block) ist eine begrenzte, fallweise festgelegte Anzahl von Bits oder Bytes, die als Transporteinheit behandelt wird. Der Blockaufbau und die Blockelemente entsprechen den betreffenden Kommunikationsprotokollen.

Massenspeicher[Bearbeiten | Quelltext bearbeiten]

Festplatten und Disketten[Bearbeiten | Quelltext bearbeiten]

Datenblöcke kommen bei Festplatten und Disketten auf verschiedenen Abstraktionsebenen vor:

  • Zum einen erfolgt die Kommunikation zwischen Betriebssystem und Gerätecontroller (ist in zeitgenössischen Festplatten eingebaut) sowie auch der Zugriff auf den Datenträger durch den Gerätecontroller blockweise. (Die Größen der Blöcke bei Kommunikation und Zugriff sind normalerweise gleich, außer bei 512e-Festplatten.)
Diese Datenblöcke werden bisweilen, insbesondere im Umfeld der Microsoft-Betriebssysteme, Sektoren genannt, um sie vom zweiten Fall zu unterscheiden. Das Wort Sektor wird hierbei eigentlich ungenau benutzt, da es traditionellerweise in Analogie zum Begriff Kreissektor benutzt wird. Es steht also eigentlich für alle Datenblöcke im entsprechenden Kreissektor, wobei erst zusammen mit der Kopf- sowie Zylinder-Nummer ein bestimmter Datenblock spezifiziert ist (CHS-Adressierung).
  • Zum anderen erfolgt die Organisation der Daten durch das Betriebssystem (genauer: durch den Dateisystem-Treiber) üblicherweise nicht mehr auf der niedrigsten Ebene der Datenblöcke, sondern auf der nächsthöheren, derjenigen der Cluster (dies ist der Terminus unter Windows; dagegen unter Linux: Blöcke).[1]
Ein Cluster umfasst dabei praktisch immer einen oder mehrere Sektoren (meist eine Zweierpotenz), z. B. acht.

Blockgröße[Bearbeiten | Quelltext bearbeiten]

Ein Datenblock (kurz Block oder Sektor genannt) ist die kleinste in einem Zugriff les- oder schreibbare Einheit einer Festplatte oder Diskette. Traditionell sind Datenblöcke 29 = 512 Byte groß, was der Clustergröße des Ur-Unix-Dateisystems entspricht; seit ca. 2010 gibt es zunehmend Festplatten mit 212 = 4096-Byte-Datenblöcken, was der Mindestclustergröße moderner Betriebssysteme entspricht. (Für Details dazu und Probleme bei der Umstellung siehe Abschnitt Advanced Format im Artikel Festplattenlaufwerk.)

Adressierung[Bearbeiten | Quelltext bearbeiten]

Jeder Datenblock auf einem Datenträger kann eindeutig adressiert werden, wozu es verschiedene Verfahren gibt:

  • die CHS-Adressierung (über Zylinder-, Kopf- und Sektornummer) orientiert sich an der Festplattengeometrie. Diese ist bei zeitgenössischen Festplatten allerdings derart komplex, dass sie via CHS nicht mehr abgebildet werden kann. (Daher nimmt der Festplattencontroller bei der CHS-Adressierung auch eine Adressumsetzung vor und spiegelt dem Host (Computer mit Betriebssystem) eine fiktive Geometrie vor, die in den Rahmen der Beschränkungen aufgrund der CHS-Adressierung passt.)
  • das modernere LBA-Verfahren (blockbasierte Adressierung) über fortlaufend nummerierte Blöcke.

Compact Disc[Bearbeiten | Quelltext bearbeiten]

2352 Byte, entsprechend 1/75 s Audiodaten, ist die Blockgröße bei Audio-CDs. Auch bei der Datenspeicherung z. B. auf CD-ROM (Mode 1) wird diese Blockgröße verwendet. Darin sind außer 2048 Byte = 2 KiB Nutzdaten als praktikabler Datenmenge zusätzliche Fehlerkorrektur- und Synchronisationsdaten enthalten. Sie verringern die Bitfehlerhäufigkeit um etwa das Zehntausendfache gegenüber dem Wert bei Audio-CDs.

Protokolle[Bearbeiten | Quelltext bearbeiten]

Netzwerk[Bearbeiten | Quelltext bearbeiten]

In Computernetzen werden Datenblöcke eher als Datenpakete bezeichnet. In den meisten Netzwerkprotokollen ist die Paketlänge variabel, es gibt allerdings häufig Mindest- oder Maximallängen für die Pakete. So muss etwa ein Ethernet-Paket mindestens 72 Byte groß sein. Sind weniger Daten zu senden, so wird das Paket künstlich durch Fülldaten (z. B. Nullen) vergrößert, die vom Empfänger ignoriert werden.

SCSI[Bearbeiten | Quelltext bearbeiten]

Das SCSI-Protokoll verwendet Datenblöcke, um Befehle zu senden. Es tritt im Computer außer bei SCSI-Laufwerken u. a. auch bei Laufwerken mit wechselbaren Medien auf (CD- und DVD-Laufwerke). Dort werden Datenpakete als Pakete referenziert, die befehlsweise 10, 12 oder 16 Bytes groß sind.

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Konzepte der Speicheradressierung – Seite beim Massachusetts Institute of Technology; Stand: 19. Juni 2011