Ursprünglich ist dasenglischehardware ungefähr bedeutungsgleich mitEisenwaren und wird heute im englischsprachigen Raum auch noch in diesem Sinne verwendet – also nicht nur ausschließlich fürcomputer hardware. In Anlehnung an diese Wortherkunft wird als Synonym für HardwareBlech verwendet.
Datenverarbeitende Systeme, im Folgenden als „Computer“ bezeichnet, bestehen immer aus Hard- und Software. Hardware ist der Teil, den man anfassen kann, und umfasst alle Komponenten vom einfachen Kondensator bis zur komplett bestückten Platine, das Gerät als Ganzes sowie dessen Zubehör wie beispielsweiseMaus,Tastatur,Bildschirm undDrucker, aber auchDatenträger wieFestplattenlaufwerke oderUSB-Speichersticks.
Software istInformation und kann nicht angefasst werden, da sie immateriell ist.[2] Sie ist unterteilbar inProgramme (Ablaufbeschreibungen und Konfiguration) sowieDaten und bestimmt, was ein Computer tut und wie er es tut (in etwa vergleichbar mit einemDrehbuch).[3] Die Hardware führt Software aus und setzt sie so in Aktionen um.
Ebenso wie Information kann Software nicht ohne physische Repräsentation existieren:Software kann zwar auf Medien gespeichert, gedruckt, angezeigt oder transportiert werden. Diesesind aber nicht die Software, sondern beinhalten sie nur.
Früher Computer, der durch Stecken von Kabeln programmiert wirdIn den 1950er Jahren wurde Software aufLochstreifen gespeichert. Jede mögliche Lochposition steht für einBit. Die Löchersind jedoch nicht die Software; sie sind Teil der Hardware. Auch moderneDatenträger sind nicht die Software, sondern immer Hardware, die Software lediglich enthalten.
Bei der Betrachtung von Software kommt es drauf an, ob diese losgelöst von der Hardware veränderlich ist, oder ob die Abläufe und Konfiguration fest an die Struktur der Hardware gebunden sind. Es braucht nicht zwingend eine ausdrückliche Software, um eine Hardware in ihrem Arbeitsablauf automatisiert zu steuern. Selbst komplexe Arbeitsabläufe lassen sich komplett in Hardware umsetzen – dashardwaregesteuerte Arbeitsprinzip. Die grundsätzliche Funktion der Maschine, hier der Ablauf der Rechnung, wird damit während der Konstruktion vorgegeben. Als Beispiel sei eines der frühen Spielhallenspiele genannt, das von Atari 1976 produzierte SpielBreakout. Das komplette „Programm“ (der Ablauf, die Logik) bestand ausschließlich aus Hardware, bildlich gesehen aus „fest verdrahtetenSchalttafeln“.[4] Auch beiAnalogrechnern wird die komplette Logik über die Verschaltung und Verdrahtung ihrer Komponenten bestimmt. Die Software widerspiegelt sich hier in der Konfiguration.
Auch in heutigen elektronischen Geräten werden automatisierte Arbeitsabläufe teilweise direkt in der Hardware implementiert, z. B. in Form vonLogikgattern. Sie setzen einen bestimmten Ablauf von Instruktionen um. Ihre Funktion ist fest durch die Struktur der Hardware vorgegeben und kann nachträglich nicht mehr verändert werden. Für ein Update auf neue Funktionen oder zum Beheben von Fehlern muss die Hardware (zumindest teilweise) ausgetauscht, ergänzt oder durch anderweitige physische Eingriffe angepasst werden. Dafür ist die Verarbeitungsgeschwindigkeit in der Regel höher und der Energieverbrauch oft geringer als bei einer Softwarelösung.
Soll ein Arbeitsablauf ohne physische Eingriffe über bloße Konfiguration hinaus nachträglich abänderbar sein, so kommt dassoftwaregesteuerte Arbeitsprinzip zum Tragen: Dafür erhält die Hardware einenProzessor. Dieser ist in der Lage, Software in Form von Abläufen „zu verstehen“ und sie abzuarbeiten. Zudem enthält die Hardware konfigurierbare Einheiten, deren Funktion sich ebenfalls umprogrammieren lässt. Die Software und damit die Funktion des Gerätes kann so einfach angepasst und sogar komplett ausgetauscht werden, ohne die Hardware dafür verändern zu müssen. So lassen sich auf ein und demselben Gerät nahezu beliebige Anwendungen nutzen.
Heutige komplexere Datenverarbeitungssysteme enthalten oft eine Kombination aus hardware- und softwaregesteuerten Komponenten, wobei die Hardware sowohl aus fest verdrahteter Elektronik als auch programmierbarer digitaler Elektronik (FPGAs) besteht.
Im obigen Beispiel verwendete das von Atari produzierte Spielhallengerät von 1976 keinen Prozessor. Bereits ein Jahr später wurde das Spielprinzip auf ein prozessorgesteuertes Gerät übertragen, den Computer. Seither gab es das Spiel auch als Software.[4] Das Computerspiel bestand nicht mehr aus „verdrahteten Schalttafeln“, sondern aus Anweisungen für einen Prozessor inklusive der für die Abarbeitung notwendigen weiteren Informationen (den Daten), die gemeinsam auf einemDatenträger gespeichert und von dem Computer ausgewertet wurden.
Die Basis-Bestandteile eines Prozessors sind die verschiedenen Untergruppen wie Steuerwerk, Rechenwerk (Arithmetisch-logische Einheit „ALU“), Speicherwerk und Eingabe-/Ausgabewerk (Peripheriegerät). Mittlerweile sind bei modernen Prozessoren viele dieser Strukturen eines Rechners in einem Hardwarechip integriert, etwa:
Steuerwerk zur ALU und zur Befehlskodierung gleich mehrere Male zur Parallelverarbeitung;
die Steuerung für ein Bus-System, das interne und externe Komponenten miteinander verbindet.
Bei sogenannteneingebetteten Prozessoren (embedded systems), wie sie zum Beispiel in PDAs (Personal Digital Assistant) oder Waschmaschinen verwendet werden, findet man im selben Gehäuse noch ein Ein-/Ausgabewerk in Form serieller Schnittstellen (zum Beispiel USB), digitalemI/O (Input/Output) zum Beispiel für einenTouchscreen oder eine Motorsteuerung und analogem I/O für zum Beispiel Lämpchen.
Noch stärker integriert sind sogenannteSoCs(System on a Chip) für zum BeispielSmartphones, bei denen weitere Komponenten integriert sind, bis hin zuArbeitsspeicher (RAM) undFlash-Speicher.
Zur Computer-Hardware gehören ferner die PC-Komponenten:
Hardware. wortschatz.uni-leipzig.de; abgerufen am 5. März 2015
Hardware. thefreedictionary.com; abgerufen am 5. März 2015
↑Jochen Ludewig, Horst Lichter:Software Engineering. 1. Auflage. dpunkt Verlag, 2007,ISBN 978-3-89864-268-2, „Software ist immateriell und besteht […] aus den Sprachen und Notationen, in denen sie formuliert ist.“
↑Tessen Freund:Software Engineering durch Modellierung wissensintensiver Entwicklungsprozesse.ISBN 978-3-940019-11-0, Kap. 2.1.1 „Software“, S. 25. Zitat Edmunds: „Software includes computer programs and data that is used by theses programs […] Software determines what a computer does and how it does it.“google-books
↑abSteve Wozniak:iWoz – Wie ich den Personal Computer erfand und Apple mitgründete. Deutscher Taschenbuchverlag 2008,ISBN 978-3-423-34507-1, S. 144–149.