Hans Wittwer

Geschichten, die das Leben schrieb

Nachrichtentechnik

Speichern

🏁

Zusammenfassung

Daten speichern ist Würmer aus Bits versorgen. Ein Bitwurm ist eine Aneinanderreihung von Bytes. Jedes Byte hat 8 Bit. Was die Bits bedeuten, interessiert nicht. Deshalb kann alles genau gleich in Bytes gespeichert werden, egal was der Inhalt bedeutet.

Weil ein Bit zwei Zustände (0 oder 1) haben kann, kann ein Bit mit einem Schalter (zwei Stellungen, AUS oder EIN) abgebildet und damit gespeichert werden. Die Festplatte macht das mit kleinen magnetisierbaren Flächen, die in zwei Richtungen magnetisiert werden können. Diese Magnetisierung bleibt bei Stromausfall bestehen und kann später wieder gelesen werden. Der schnelle elektronische Speicher RAM macht das mit elektronischen Schaltern (Transistoren). Die Daten sind bei Stromausfall im Eimer. Ein spannender Fall ist das EEPROM (Electrically Erasable Programmable Read-Only Memory). Dieses Ding kann man elektrisch löschen und wieder programmieren und die Daten bleiben dauerhaft drin, auch bei Stromausfall. Inzwischen wurden Halbleiterlaufwerke SSD (Solid-State-Drive) erfunden und verdrängen sukzessive die Festplattenlaufwerke HDD (Hard-Disk-Drive). Statt mit magnetisierten Flächen werden Bits mit Halbleiterbauteilen gespeichert, die bei Stromausfall den Zustand behalten. Ob HDD oder SSD, ist eine Frage des Preises, der Datenmenge und der Lesbarkeit.

Datenträger und Speichermedien

Je nach Anforderung wurden verschiedene Speichermedien erfunden. Schnell, dauerhaft, mobil, preiswert usw. sind Anforderungen. Alles in einem einzigen Medium zu einem akzeptablen Preis geht offensichtlich bis heute nicht, deshalb eine Auswahl von heute verwendeten Speichermedien.

Dauerhaft speichern

Dauerhaft Speichern ist Nullen und Einsen im riesengrossen, aber langsamen Speicher versorgen, damit sie da bleiben, wenn der Strom weggeht und die Daten wieder gelesen werden können wenn der Strom wieder gekommen ist. Solche Speicher sind Festplatten und USB-Stick. Heute werden oft Solid State Drive (SSD) Speicher zusätzlich oder an Stelle von klassischen Festplatten eingesetzt. SSD-Speicher haben keine mechanischen Teile, sind ruhig und schneller als klassische Festplatten.

Die Kartoffeln speicherst Du im Keller, weil Du sie erst später brauchst.

Schnell speichern

Schnell speichern ist Nullen und Einsen im blitzschnellen Arbeitsspeicher zwischenlagern damit sie blitzschnell zur Verfügung stehen, wenn die Anwendung sie braucht. Das macht die Anwendung zusammen mit dem Betriebssystem vollautomatisch im RAM (Random Access Memory).

Die Daten im Arbeitsspeicher sind zwar obermegaschnell jedoch im Eimer, wenn der Strom weg ist.

Elektrisch dauerhaft speichern

ROM, PROM, EPROM und EEPROM sind solche Dinger. Welche wann wo, ob auf einer elektronischen Festplatte (SSD) mit elektronischen Schaltern oder im Arbeitsspeicher im Random Access Memory (RAM), ist ein Thema für Maschinenkonstrukteure.
Ein Read Only Memory (ROM) hat die Schalter dauerhaft gesetzt und kann nicht mehr verändert werden. In einem EEPROM ist das Startprogramm (Bootprogramm) vom Hersteller eingebrannt, ohne dieses Programm kann der Computer nicht starten. Das Boot-Programm holt sich das Betriebssystem von der Festplatte und übergibt ihm das Kommando. Ein elektronisch löschbarer und neu beschreibbarer Speicher EEPROM gibts auch. Der Unterschied besteht darin, dass ein RAM den gespeicherten Inhalt verliert, wenn der Strom ausfällt, aber blitzschnell ist. ROM, PROM, EPROM, EEPROM und Festplatten behalten den Inhalt auch bei Stromausfall, sind aber langsamer und/oder teurer. Der Inhalt im RAM (Arbeitsspeicher) ist wie gesagt sehr schnell abrufbar. Deshalb ist der Arbeitsspeicher ein RAM und alles, was später wieder gebraucht werden will muss auf einen dauerhaften Speicher bevor Du die Kiste abstellst. Anwendungen fragen oder speichern zwischendurch ohne zu fragen. Es gibt auch Anwendungen, die nicht speichern und nicht fragen. Das ist nicht nett und Du fängst nochmal an.

Prinzip

Ob Text, Bild, Ton oder … Alles wird in Bytes gespeichert.

Es liegt an der Anwendung, was die Bits bedeuten. Den Lagerchef interessierts nicht hauptsache Bytes. Aber wie speichert der Lagerverwalter?

  1. Der Lagerverwalter speichert Ketten von Bytes.

  2. Jede Byte-Kette verlangt einen Namen, das ist der Dateiname.

  3. Jede Datei kann übers Internet transportiert werden.

Dem Internet ist der Inhalt auch egal, nicht aber den Spionen!

Spione wollen kucken oder sogar ändern (auch Regierungen).

Verschlüsselungsprogramme schützen vor Spionen.

Schutzprogramme schützen vor Übetragung. Dateinamen mit der Endung .exe, .com werden von Schutzprogrammen abgelehnt, weil Spione unterwegs Blödsinn einbauen könnten. Früher im Wilden Westen mussten Räuber Postkutschen überfallen. Der moderne Wilde Westen findet im Internet statt. Dateien von Microsoft (.xls, .doc usw.) sind ebenfalls heikel, weil sie Programmcode enthalten können. Nimm .pdf wenn Du ein Dokument senden möchtest. .txt, .xml, .json o.ä. gehen auch.

Platzbedarf

Auf einer 4GB-Festplatte haben 232 ca. 4 Milliarden Byte platz. Das braucht viele Schalter. Ein 32-Bit-Computer kann das handhaben, bei mehr Speicher hat er einen Knorz. Ein 64-Bit-Compuer kann 264 Byte etwa 18 Terabyte verwalten. Angenommen eine Seite hat 900 Zeichen im ASCII-Code und ein Buch hat 200 Seiten, dann könntest Du in einem 4GB-Speicher ca. 22 Tausend Bücher lagern.

Platz ohne Ende oder doch nicht? Eventuell sieht es anders aus, wenn Du Sonderzeichen, Seitenränder und dergleichen sowie Musik, Bilder und Videos speichern mächtest. Wenn Du computergestütztes Design und computergestütztes Produzieren (CAD/CAM) im Sinn hast, braucht es viel Platz. Und wenn Du noch Daten sichern oder archivieren willst dann Prost Nägeli. Mach es nicht im Alleingang, wenn Du auf die Daten angewiesen bist. Birchermüesli machen ist leicht. Wenn 150 Personen gleichzeitig Les Trois Filet mit Morchel Sauce essen wollen, reicht Birchermüesli machen können nicht aus.

Zusammenhänge, Diese zu wissen Überraschungen vermeiden könnten. Zum Beispiel wenn mehr Speicherplatz in Anspruch genommen wird als Du erwartest. Du solltest wissen, dass Daten mehr Speicher brauchen als die Anzahl Zeichen, die Du geschrieben hast.

  1. Eine .txt-Datei benötigt keine Verwaltungsinformationen, Jede Zeile hat einen Wagenrücklauf und einen Zeilenvorschub am ende der Zeile. Der Text ABC im reinen ASCII-Code belegt demnach 5 Byte.
  2. Andere Dateien brauchen mehr Speicher als erwartet.
  3. Der Unicode im UTF-8-Format braucht 1 bis 4 Byte pro Zeichen
  4. Der RGB-Code braucht 3 Byte pro Bildpunkt
  5. Je nach Dateityp sind mehr oder weniger Verwaltungsinformationen drin.
  6. Dateitypen gibt es eine grenzenlose Anzahl.

Der Lagerverwalter hat noch ein internes Problem. Für die Verwaltung braucht er auch Platz. Wer welchen Sektor gemietet hat muss er sich im gleichen Speicher merken. Der Lagerverwalter hat es wie ein Getränkelagerist gemacht.

Getränkelager vs. Datenlager

Flasche
Was drin ist interessiert den Lagerverwalter nicht.
Byte
Was die 8 Bit bedeuten interessiert den Speicherverwalter nicht.

Harasse
In eine Harasse passen 24 Flaschen.
Sektor
In einen Sektor passen 512 Byte.

Palette
Auf eine Palette passen 48 Harassen.
Cluster
In einen Cluster passen 8 Sektoren (4'048 Byte).

Der Getränkelagerist vermietet dir Paletten, egal wieviele Harassen auf den Paletten stehen und ob die Harassen gefüllt sind. Auch nur für eine einzige Flasche berechnet er dir eine ganze Palette.

Der Speicherverwalter vermietet Dir Cluster, egal ob die Sektoren gefüllt sind. Auch nur für einen einzigen Buchstaben vermietet er dir einen ganzen Cluster.

Trostpflaster

Dank Komprimierungsmechanismen werden Dateien schlanker. Kontrolliere die Dateigrösse.

Beispiel Bitmap-Bild 10x13cm

Siehe auch im Kapitel ← Bild codieren

Angenommen unser Bild ist 13cm breit und 10cm hoch – ein gängiges Format in der Fotografie – und unser Bild speichern wir in der Auflösung von 96 Pixel pro Zoll (96 dpi) dann hat unser Bild in der Breite 491 Pixel und in der Höhe 378 Pixel. 491 Pixel x 0.2645mm/Pixel = 129.8695mm aufgerundet sind das unsere 13cm. Die Höhe darfst Du gerne selbst prüfen.

378 Pixel hoch mal 491 Pixel breit ergeben Total 185'598 Pixel für unser Beispielbild. Jeder Pixel braucht 3 Byte Speicherplatz, alle drei Farbanteile (Rot, Gelb und Blau) brauchen je ein Byte. Das sind 556'794 Byte für unser Beispielbild. Wenn Du das mit paint auf einem Windowsrechner machst, benötigt diese Datei 557'982 Byte (544 KB) und Belegt 561'152 Byte (548 KB).

Moment! Was soll das? Weil die Anzahl Byte pro Zeile ohne Rest durch 4 teilbar sein muss, hängt die Maschine bei unserer Bildgrösse bei jeder Zeile 3 Byte an.

Also nochmal: Eine Zeile braucht 491 mal 3 plus 3 Byte das sind 1'476 Byte und bei 378 Zeilen ergibt das 557'928 Byte. Jetzt fehlen noch 557'982 minus 557'928 nämlich 54 Byte. Die 54 Byte sind der Vorspann darin steht, was es für eine Bilddatei ist und wie gross sie ist.

Jetzt noch die Differenz zwischen 557'982 und 561'152. 561'152 sind genau 137 mal 4'096 (2 hoch 12) Das Betriebssystem speichert Dateien in Cluster, wie oben gelernt. Das Betriebssystem macht das automatisch bis der Speicher aus dem letzten Loch pfeift.

Für unser kleines Bild brauchts 548 KB, das ist ja blödsinnig viel! Keine Panik, schlaue Köpfe haben Komprimierungen erfunden. Heute werden Bilder in leistungsfähigeren Formaten gespeichert. Falls Dich komprimieren interessiert besorge Dir Fachliteratur dazu.

Heute speichert man Bilder fürs Internet etwa im PNG-Format und wenn man Schrift einigermassen schön drucken möchte, sind 300 dpi gut lesbar. Für Farbbilder verwendet man gerne das .jpg Format. Dann gibst noch Vektorgrafiken usw.

Damit es nicht zu einfach wird, haben findige Köpfe verschiedene Codierungen erfunden. Einer davon ist der RGB-Code →, diesen schauen wir uns mal an …

Zum Glück ist Speicher heute günstig, ein TB gibts für unter 100 Franken. 1979 hätte ich für eine 10 MB Festplatte X-tausend Franken hinblättern müssen also verwendete ich 5¼ Zoll Disketten mit 128 KB. Der Arbeitsspeicher von meinem Apple IIe verfügte über einen Arbeitsspeicher von 48 KB.

Mach Dir keine Sorgen, kaufe Speicher wenn Du zuwenig hast.

Gibt es Werkzeuge um Dateien zu inspizieren und zu ändern? Ja gibts, ein Editor Editor, einen schauen wir uns mal an …