Kompatibilitat (Technik)

aus Wikipedia, der freien Enzyklopadie
Zur Navigation springen Zur Suche springen

Kompatibilitat liegt in der Technik vor, wenn zwei oder mehr Produkte gegenseitig so koordiniert sind, dass sie storungsfrei miteinander funktionieren konnen und einem Nachfrager einen Nutzen stiften.

Allgemeines [ Bearbeiten | Quelltext bearbeiten ]

Besitzt jemand Musik-CDs , so konnen diese nur vollstandigen Nutzen stiften, wenn sie auf einem CD-Player abgespielt werden. Jedes dieser beiden Produkte ist fur sich alleine nicht nutzbringend. Dies ist eine von drei Arten der Kompatibilitat.

Arten [ Bearbeiten | Quelltext bearbeiten ]

Die Fachliteratur unterscheidet drei Arten der Kompatibilitat: [1]

Diese Arten konnen auch gleichzeitig vorkommen. So ist beispielsweise bei Peripheriegeraten neben der physischen Kompatibilitat auch die Kommunikation zwischen Computer und Peripheriegerat durch erfolgreichen Datentransfer erforderlich.

Die Aufwarts- (oder Vorwartskompatibilitat ) und Abwartskompatibilitat (oder Ruckwartskompatibilitat ) betrifft in der Informatik die chronologisch unterschiedlichen Versionen zusammengehoriger Produkte, insbesondere bei Hardware und Software . Sie sind abwartskompatibel , wenn neuere Versionen mit alteren Versionen oder deren Schnittstellen vertraglich sind. Aufwartskompatibilitat liegt vor, wenn altere Versionen mit neueren oder deren Schnittstellen vertraglich sind.

Erfullt ein System die Anforderungen eines anderen (und geht eventuell daruber hinaus), wird es als mit letzterem kompatibel bezeichnet.

Zum Beispiel kann ein elektronisches Bauteil zu einem anderen mit unterschiedlicher Bezeichnung kompatibel sein. Die Bauteile konnen dann ausgetauscht werden, da sie dieselben Eigenschaften haben und meistens die gleiche oder eine ahnliche Bauform.

Im Gegensatz zur konkreten Austauschbarkeit und Gleichwertigkeit wird mit Interoperabilitat etwas allgemeiner die Fahigkeit zur Zusammenarbeit von verschiedenen Systemen (durch die Einhaltung gemeinsamer Standards) bezeichnet. Beide Begriffe werden haufig synonym verwendet.

Computer-Hard- und Software [ Bearbeiten | Quelltext bearbeiten ]

Standardisierte Binarschnittstellen ( englisch ABIs ) uber multiple Betriebssysteme sorgen fur Binarkompatibilitat, also die Portierbarkeit von Binarcode, wahrend standardisierte Programmierschnittstellen (englisch APIs ) fur Quelltextkompatibilitat, also die Portierbarkeit von Quellcode verantwortlich sind.

Binarkompatibilitat [ Bearbeiten | Quelltext bearbeiten ]

Binarkompatibilitat bezeichnet eine Eigenschaft von Betriebssystemen oder Prozessoren , digitale Daten auf die gleiche Weise zu ?verstehen“. Meistens ist damit gemeint, dass ein Prozessor Anweisungen versteht, die fur einen anderen geschrieben wurden (siehe auch Befehlssatz ). Damit kann aber auch die Byte-Reihenfolge (Big- oder Little-Endian) oder, bei serieller Ubertragung , die Bit-Reihenfolge gemeint sein.

Zwei Betriebssysteme sind binarkompatibel , wenn jedes Programm , das fur das eine Betriebssystem kompiliert wurde, ohne erneutes Kompilieren sofort auf dem anderen Betriebssystem lauffahig ist.

Binarkompatibilitat von Betriebssystemen kann einerseits auf Hardware -Ebene erreicht werden ( CPU - Befehlssatzkompatibilitat ), durch Software - Emulatoren (z. B. durch eine Virtual Machine ) oder durch vorherige Umformung ( JIT-Compiler ). Apple setzte z. B. zur Wahrung der Kompatibilitat zwischen Motorola-68000- und PowerPC -Rechnern einen Software-Emulator ein.

Quelltextkompatibilitat [ Bearbeiten | Quelltext bearbeiten ]

Quelltextkompatibilitat bedeutet, dass ein Quelltext ohne Anpassung auf unterschiedlichen Systemen kompiliert werden kann. Zwei Betriebssysteme sind quelltextkompatibel , wenn zur Ubertragung eines Programms ein erneutes Kompilieren notwendig ist, aber keine Anderungen am Quelltext.

Abwartskompatibilitat [ Bearbeiten | Quelltext bearbeiten ]

Als Abwartskompatibilitat wird die Verwendbarkeit bzw. Kompatibilitat neuerer oder erweiterter Versionen eines technischen Objekts oder Standards zu den Anwendungsbedingungen einer fruheren Version bezeichnet. Dabei ist die Relation Abwartskompatibilitat nicht notwendigerweise transitiv.

Darstellung der Abwartskompatibilitat anhand des Beispiels Tur. Zarge_21 ist abwartskompatibel zu Turblatt_1, aber nicht zu Turblatt_0.

Eine neuere Version einer Software sollte die mit der alteren Version erstellten Dokumente wieder offnen und weiterverarbeiten konnen. Wahrend dies haufig gut gelingt, sind Dateien einer neueren Software-Version meistens durch die altere Version nicht mehr lesbar, was viele Anwender zu Aktualisierungen zwingt.

Ein Beispiel fur Abwartskompatibilitat ist UTF-8 , das nach wie vor auf den ersten 128 Stellen die Zeichen des 7- Bit - ASCII -Zeichensatzes darstellt, sodass die darauf basierenden Rechensysteme nach wie vor ASCII-Dokumente korrekt verarbeiten und anzeigen konnen.

Der Signalubertragungsstandard HDMI ist eine Weiterentwicklung von DVI und dazu abwartskompatibel. Beide benutzen dieselbe Signalcodierung TMDS . [2]

Im Hardware -Bereich wird heute ebenso erwartet, dass Programme fur ein altes Computermodell auf einem neuen Modell (zumindest auf einem vom selben Hersteller) weiterhin zu verwenden sind, auch wenn umgekehrt viele Programme fur das neue Modell auf dem alten nicht oder nur mit Einschrankungen nutzbar sind. Bei Großrechnern herrscht dieses Prinzip bereits seit den 1960er-Jahren vor, bei Microcomputern hat es sich bis Mitte der 1980er weitgehend durchgesetzt.

Abwartskompatibilitat in der IT-Branche geht oft mit Nachteilen einher. Beispiele sind

  • der seit Jahrzehnten in x86 - Prozessoren existierende Real Mode , der in heutigen Prozessoren nicht mehr benotigt wird
  • die MS-DOS -basierten Windows-Versionen 95, 98 und ME, welche unter Problemen litten, weil sie aus Kompatibilitatsgrunden weite Teile von MS-DOS und Windows 3.x weiterverwenden mussten.

Aufwartskompatibilitat [ Bearbeiten | Quelltext bearbeiten ]

Als Aufwartskompatibilitat wird die Verwendbarkeit oder Kompatibilitat alterer oder veralteter Versionen eines technischen Objekts oder Standards zu den Anwendungsbedingungen einer neueren Version bezeichnet.

Ein Beispiel ist das analoge Farbfernsehen , das mit Schwarz-Weiß-Fernsehempfangern als Schwarz-Weiß-Bild empfangen werden konnte.

Im Fall einer Textverarbeitungsanwendung kann das beispielsweise beinhalten, dass eine alte Version der Anwendung Dokumente anzeigen und bearbeiten kann, die von einer neueren Version erstellt wurden. Teile des Dokumentes, fur die in der alten Version noch keine Funktion besteht, konnen zwingendermaßen nicht verarbeitet werden. Aufwartskompatibilitat bedeutet aber, dass diese Teile das einwandfreie Funktionieren der alten Version nicht beeinflussen.

In der Programmierung ist die Gewahrleistung von Aufwartskompatibilitat schwieriger als die von Abwartskompatibilitat, weil beim Erstellen einer Version der Anwendung noch nicht alle Formate und Strukturen spaterer Versionen bekannt sind. Trotzdem muss die aktuelle Version mit diesen Formaten und Strukturen arbeiten konnen. Bei der Abwartskompatibilitat entsteht dieses Problem nicht, da man beim Erstellen der neuen Version die Formate und Strukturen alter Versionen bereits kennt.

Eine alte Programmversion, die Daten einer neuen Version als Eingabe erhalt, kann also nur die Daten verarbeiten, fur die sie auch Anweisungen hat. Der Rest muss ignoriert werden und das Programm muss versuchen, nicht abzusturzen . Webbrowser ignorieren beispielsweise neue HTML -Tags, die sie nicht kennen.

Viele Programme sind heute aufwartskompatibel und konnen auch noch große Unterschiede zwischen Versionen kompensieren. Werden Fahigkeiten einer spateren Programmversion in eine fruhere Version per Update eingebracht, so spricht man von einem Backport .

Aufwartskompatibilitat von Computerhardware kann beispielsweise durch Emulation erreicht werden.

Inkompatibilitat bei Computer-Hard- und Software [ Bearbeiten | Quelltext bearbeiten ]

Neuere Versionen eines Programms sind in der Regel abwartskompatibel zu alteren Versionen. Diese alteren Versionen sind jedoch oft nicht aufwartskompatibel. Werden Funktionen nicht nur erweitert, sondern geandert, so kann eine neue Version in Teilbereichen (abwarts-)inkompatibel zur alten Version werden. Geschieht dies bei dynamischen Bibliotheken , so tritt leicht der Zustand ein, den Programmierer scherzhaft als ? DLL Hell “ bezeichnen: Da verschiedene Programme versuchen, fur sie jeweils leicht unpassende Komponenten zu verwenden, funktioniert gar nichts mehr richtig.

Ein konkretes Beispiel: Der Athlon-64-Prozessor der Firma AMD ist abwartskompatibel zum 8086-Prozessor der Firma Intel , der im Jahre 1978 erschien. Der Athlon 64 kann also Programme des alten 8086 ausfuhren. Umgekehrt gilt dies jedoch nicht. Die Kompatibilitat beschrankt sich hier auf den Befehlssatz, wobei die Ausfuhrungsgeschwindigkeit drastisch zugenommen hat. Der neue Prozessor selbst kann wegen unterschiedlicher Gehausebauformen, Signale, Versorgungsspannungen usw. nicht mit dem alten ausgetauscht werden. Die beiden Prozessoren sind also hinsichtlich dieser Eigenschaften inkompatibel.

Fehlerkompatibilitat [ Bearbeiten | Quelltext bearbeiten ]

Fehlerkompatibilitat (englisch: bug compatibility ) ist ein Fachbegriff aus der Informationstechnik , der bedeutet, dass eine neue und verbesserte Software oder Hardware beziehungsweise ein alternatives Produkt von einem Mitbewerber die gleichen Fehler besitzt, und somit kompatibel ist. [3]

Der Grund fur die Fehlerkompatibilitat ist in der Regel nicht, dass es schwierig ware, die Fehler zu beheben. Grund ist, dass bestehende Programme sich auf die Fehler verlassen und eventuell nicht mehr funktionierten, wenn man sie behobe. Das Korrigieren des Fehlers verursacht also mehr Probleme als das Dokumentieren und Beibehalten des fehlerhaften Verhaltens. Ein bekannter Fehler wird somit schnell zu einem Teil des Interface und wird von Anwendern desselben berucksichtigt. Eine Anderung des Interface, auch wenn es inhaltlich eine Fehlerkorrektur ist, kann zu fehlerhaftem Verhalten bei abhangigen Systemen fuhren.

Beispiel

Im Atari Betriebssystem TOS waren in der ersten Version in der Funktion Bcostat die Geratenummern fur die Tastatur (hier: 3, sonst: 4) und die MIDI -Schnittstelle (hier: 4, sonst: 3) vertauscht. Da sich die Programmierer auf diese Vertauschung eingestellt hatten, und es funktionierende Software gab, die die vertauschten Geratenummern verwendete, wurde in spateren Versionen die Dokumentation angepasst, und die Vertauschung der Geratenummern in dieser Funktion beibehalten. [4]

Eine gangige Strategie ist, die Fehler im neuen Produkt zu korrigieren, aber das vorherige Verhalten zumindest uber eine Option zu simulieren. So kann das System auch mit der neuen Version weiter betrieben werden, bis es selbst an die Anderungen angepasst wurde. Man spricht dann auch von einem Fehlerkompatibilitatsmodus.

Werbung [ Bearbeiten | Quelltext bearbeiten ]

Gelegentlich werden in der Werbung Produkte als ?kompatibel“ zu denen eines etablierten Wettbewerbers bezeichnet, um zu vermitteln, dass sie trotz ihres niedrigeren Preises mit jenen austauschbar sind. Diese ?Produkteigenschaft“ kann jedoch auch als negatives ?austauschbar“ wahrgenommen werden.

Wirtschaftliche Aspekte [ Bearbeiten | Quelltext bearbeiten ]

Okonomisch betrachtet wird die Kompatibilitat bei Komplementargutern genutzt. So kann beispielsweise eine CD nur auf einem CD-Player gespielt werden. Die meisten Wiedergabegerate konnen nur bestimmte Tontrager oder Bildtrager fur den Konsumenten wahrnehmbar machen ( Schallplatten nur auf dem Schallplattenspieler ). Auch Elektrogerate benotigen manchmal Kompatibilitat, denn Fernsehgerate konnen nur das US- Farbubertragungssystem NTSC oder das europaisch standardisierte PAL-System storungsfrei empfangen.

Ein weiterer Aspekt ist der Lock-in-Effekt , weil es Produzenten uber die technische Abhangigkeit gelingt, die Nachfrage der Verbraucher durch Kundenbindung auch kunftig auf sich zu lenken. Der erste große kommerzielle Erfolg nach diesem Lock-in-Effekt war im Jahre 1902 der Gillette -Rasierer von King C. Gillette . Statt der damals ublichen Rasiermesser, die nachgescharft werden konnten, verkaufte Gillette einen patentierten Klingenhalter, zu dem wegwerfbare Rasierklingen passten, die gunstig herzustellen waren und mit hoher Marge dauerhaft an die Nutzer der Gillette-Klingenhalter verkauft werden.

Siehe auch [ Bearbeiten | Quelltext bearbeiten ]

Literatur [ Bearbeiten | Quelltext bearbeiten ]

  • Markus Bechter: Kompatibilitatsabsicherung verteilter eingebetteter Systeme in der Mechatronik , Sierke-Verlag, 2008, ISBN 978-3-86844-091-1

Einzelnachweise [ Bearbeiten | Quelltext bearbeiten ]

  1. Joseph Farrell/Garth Saloner, Competition, Compatibility and Standards: The Economics of Horses, Penguins and Lemmings , in: The American Economic Review vol. 76, 1987, S. 940 ff.
  2. Understanding Digital Interconnects. Audioholics, LLC, abgerufen am 27. Juli 2011 (englisch).
  3. Dieter Kranzlmuller: Spezielles Kapitel 5: ?Transmeta’s Crusoe“ @1 @2 Vorlage:Toter Link/www.gup.jku.at ( Seite nicht mehr abrufbar , festgestellt im Marz 2022. Suche in Webarchiven )     Info: Der Link wurde automatisch als defekt markiert. Bitte prufe den Link gemaß Anleitung und entferne dann diesen Hinweis. , Vorlesungsfolien uber Transmetas Crusoe-Prozessor und dessen Fehlerkompatibilitat zum Intel x86
  4. Hans-Dieter Jankowski/Dietmar Rabich/Julian F. Reschke, ATARI Profibuch ST-STE-TT , Sybex Verlag, ISBN 3-88745-888-5 , 12. Auflage, S. 86; Bcosstat (BIOS 8)