Unterschied Hardware Programmierung und Software Programmierung?

5 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Was "blackman221" hier geschrieben hat, ist schon sehr richtig. Normalerweise nimmt Dir das Betriebssystem einen grossen Teil der Arbeit ab, die Hardware zu programmieren. Wenn Du z.B. in OpenOffice Writer einen Text abspeichern willst, sind dazu eine Unzahl einzelner Befehle notwendig: sprich die Festplatte an, steuere den Schreib-Lese-Kopf auf Spur xy, warte auf einen freien Sektor, schreibe die Daten hinein, suche den naechsten freien Sektor usw., schreibe die Koordinaten der verwendeten Sektoren ins Verzeichnis der Festplatte, bestaetige die erfolgreiche (oder erfolglose) Durchfuehrung ans Betriebssystem, gib den Schreib-Lese-Kopf wieder frei. .... usw. usw., das war dabei nur ein Teil der Befehle, es sind noch viel mehr, und natuerlich alles in Maschinensprache.

Wenn Du eine neue Hardware baust, muss jemand einen Treiber dafuer programmieren, damit das Betriebssystem die steuernden Befehle korrekt ans Geraet uebersetzt.

Oder wie ist das geregelt, dadie Daten, die in den Arbeitsspeicher geschrieben werden, nicht zufaellig dieselben Speicheradressen verwenden und sich damit gegenseitig ueberschreiben? Oder wie ist es geregelt, dass mehrere Benutzer gleichzeitig auf demselben Rechner arbeiten koennen? Oder woher weiss der Rechner, was er am Bildschirm anzeigen soll, wenn Du z.B. die Taste "F" drueckst? Oder woher weider Computer, welche Bildschirmaufloesung er darstellen soll? Du waehlst die zwar aus in den Systemeinstellungen, aber das muss ja dann in Pixel und Farben uebersetzt werden.

Das alles wurde irgendwann einmal programmiert bzw. wird laufend neu programmiert und dient dazu, dass die Hardware so funktioniert, wie sie soll, und dass Du Dich als Anwender weitgehend aufs 'Anwenden' konzentrieren kannst, bzw. beim Programmieren auf die reine Anwendungsprogrammierung.

Alles klar?


Sijay999 
Beitragsersteller
 16.02.2012, 13:09

habs kapiert danke sehr interessant :))

0
gangsterjaeger  16.02.2012, 13:30
@Sijay999

wenn's Dir das wert ist, dann bedanke Dich bitte mit einem Sternchen fuer 'hilfreichste Antwort'.

0

Softwareprogrammierung kann durchaus auch betriebssystemunabhängig sein, etwa ein C-Programm, dass man sowohl für Windoof als auch für LINUX kompilieren kann. Auch dynamische Webseiten unter PHP etc. laufen auf unterschiedlichen Webservern. Andererseits ist LINUX selbst komplett in C geschrieben, das einzige was man brauchte, war ein auf einen Chipsatz bezogenen Compiler.

Unter Hardwareprogrammierung versteht man üblicherweise das Programmieren eben eines solchen Chipsatzes. Ein Taschenrechner zB hat keine Festplatte, seine Arbeit wird alleine durch seine Chips und deren "Einrichtung" bestimmt. Auch das BIOS eines PC ist nicht auf die Festplatte geschrieben, sondern in den Chip "gebrannt", das ist das einzige Programm, das läuft, wenn der PC gar keine Festplatte hat. Dennoch musste das alles programmiert werden.

Für die Hardwareprogrammierung sind eher Ingenieure zuständig, für die Software Informatiker.


Sijay999 
Beitragsersteller
 16.02.2012, 19:44

Vielen dank, kenne einenf reund der studiert software and information engineering --> was macht der dann?

0
williwu  18.02.2012, 05:05
@Sijay999

Frag ihn! Ich kenne deinen Freund nämlich nicht!

0

Hardware Programmieren

Programmierung von Micricontrollern und Treibern

Software Programmieren

Programmieren von Programmen welche auf Basis der Treiber laufen

Wenn du einen Greifarm baust, musst du diesen Programmieren(=~Betriebssystem), das ist Hardware Programing (Du programmierst eine Maschiene [realer Gegenstand])

wenn du einen Spiel programmierst, dann programmierst du ein Programm für das Betriebssystem auf einer Maschiene


Sijay999 
Beitragsersteller
 15.02.2012, 18:57

ist das betriebssystem dann quasi die Basis, wo alles drauf programmiert wird (von software programmierer)?

0

Hardware ist die Maschine (der Computer) und Software sind die Programme, die darauf laufen.


Sijay999 
Beitragsersteller
 15.02.2012, 18:46

schon klar, nur die Maschine die baue ich ja und programmier sie nicht. Das Programm programmiere ich....

0