PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie ist eigentlich PC-Software enstanden?


WarSlash
2004-06-01, 12:52:41
Wie hat man damals als der erste PC gebaut wurde, überhaupt auf diesen ersten Software drauf installiert?

So ne virtuelle Umgebung gabs doch erst als Software bzw ein BIOS geschrieben war.

Und wie hat man damals überhaupt so ein BIOS geschrieben und es auf einen "leeren" Computer installiert?

Ich meine damit wie ist "Software" überhaupt enstanden ist, ohne das überhaupt etwas auf dem Computer war.

Marcel
2004-06-01, 13:31:47
Das Henne-Ei-Problem der PC-Welt?

Man nimmt einen völlig nackten PC, dessen Einzelteile über standardisierte Schnittstellen (ISA, PCI, ...) miteinander kommunizieren. Für das Ansprechen braucht man das BIOS, welches wohl in Maschinensprache erstellt wird, mit Hilfe von Assembler, so dass man nicht jede Bitfolge für die einzelnen Befehle selbst im Kopf haben muss, sondern halbwegs lesbares Zeug schreiben kann (Oder mit speziellen C-Compilern? k.A.). Dabei hat man nur die Befehle zur Verfügung, die die Hardware selbst kennt, also die des Chipsatzes und des Prozessors.
Darauf aufbauend werden Betriebssystem und Hardware-Treiber gesetzt, welche nun nicht nur den Befehlssatz von CPU und Chipsatz, sondern auch den des BIOS nutzen können, und erweitern diesen für die Anwendungsprogramme um neue Befehle (stellen aber die von Chipsatz und Geräten nicht direkt zur Verfügung, zumindestens modernere Betriebssysteme nicht mehr; das ist aber wieder ein anderes Thema).

Ich hoffe, ich habe jetzt nicht zuviel Blödsinn erzählt.


Eine kleine Geschichte am Rande:
Als Bill Gates und Paul Allen 1974 für den Altair 8800 ein Basic gebaut haben, welches wohl Betriebssystem und Programmiersprache in einem war, hatten sie keinen Altair 8800 zur Verfügung; statt dessen erstellte Paul Allen einen Emulator für dessen Hardware, der auf einem Großrechner (PDP 10 o.ä.) lief, während Bill Gates darauf das Basic bastelte.

{655321}-Hades
2004-06-01, 13:36:24
C ist noch relativ jung Marcel, von daher kann das nicht sein. B war vor C. Kein Scherz, das gab es wirklich! Gabs eigentlich auch A?

Ich frage morgen mal einen Freund von mir, der ist Kommunikationselektroniker, der wird das wissen, und auch wie das mit der Maschinensprache zustande kam.

Stone2001
2004-06-01, 13:43:55
Original geschrieben von {655321}-Hades
C ist noch relativ jung Marcel, von daher kann das nicht sein. B war vor C. Kein Scherz, das gab es wirklich! Gabs eigentlich auch A?
Nope, A gab es nicht! Vor B kam BCPL!
hmm, ich quote mich mal selbst:
Original geschrieben von Stone2001
Kleiner geschichtlicher Hintergrund:
Ursprünglich wurde Unix in Assembler geschrieben. Da aber Wartung und Fehlersuch in Assembler ein schwieriges Unterfangen war, suche man eine Hochsprache in der man Unix schreiben konnte. Die Wahl fiel auf BCPL. Diese Sprache wurde auf B reduziert. Tja, leider war B kein großer Erfolg, da an die Beschränkung der damaligen Hardware gebunden (ich an den PDP-7 Rechner). Als dann Unix auf den Nachfolger portiert werden sollte, mußte man Unix neu, von Grund auf mit Assembler, programmieren. B wurde auch portiert, allerdings wesentlich verbessert, C war geboren (B war z.b. eine Interpretierte Sprache). Nun wurde unix nochmals in C geschrieben.

Marcel
2004-06-01, 13:51:01
Ob C alt genug ist, hängt von der Plattform ab.
Die PC-Plattform zum Beispiel ist jung genug, um 10 Jahre jünger als C zu sein:
Dr. Gerhard Renner, "Turbo C", Markt&Technik, München 1988
Die Programmiersprache C wurde 1972 von Dennis Ritchie (Bell Laboratories) bei der Entwicklung des Betriebssystems Unix für Minicomputer erarbeitet [...]. Zu ihren Vorläufern zählen [...] Martin Richards BCPL (1967) und Ken Thompsons Programmiersprache B (1970).

(zitiert, weil es nicht wirklich eindeutig geschrieben ist, und ich durch Umformulierung eigene Interpretation da reinbringen würde)

Mein Informatik-Duden von 1993 setzt es in's Jahr 1974, als Erben von Pascal (1970), PL/I (1965) und der Assembler- und Maschinensprachen.

Meines Wissens nach ist Windows zu einem großen Teil in C erstellt, ebenso viele Treiber.


edit: Verwechselst Du das vielleicht mit C++, welches erst Mitte der 80er aufkam?

Lokadamus
2004-06-01, 14:34:11
mmm...

Wenn du mich fragst, würde ich eher sagen, wir müssen um einiges weiter in der Geschichte zurück. Wir landen dann ungefähr in der Zeit des 2. Weltkrieges, wo XXX (hab den Namen vergessen :() aus Deutschland und XXX (weiss ich auch nicht mehr) in Amerika mehr oder weniger parallel (keiner weiss mehr genau, wer zuerst das Teil fertig hatte) an einer Rechenmaschine bauten. Diese Maschine konnte zwar nur die grundlegenden Rechenarten, kombinierte diese aber aufgrund des Stromflusses zum richtigen Ergebniss (die Lampe leuchtete dann). Damit war die Grundlage der heutigen PCs gelegt. Dieses Wissen wurde benutzt, um Lochkarten als Speichermedium zu benutzen. Lochkarten boten die Möglichkeit, komplette Programme in binärer Form aufzuschreiben. Hat man den Papierstabel umgeworfen, war das ganze Programm nutzlos ...
Wenn du wirklich wissen willst, wie die Entwicklung des PCs und damit der Software war, solltest du vielleicht mal nach sowas suchen ...

RaumKraehe
2004-06-01, 17:20:58
Als einer der Erfinder der heutigen Computer gilt eigentlich Konrad Zuse. Wunder mich das in diesem Forum keiner bisher darauf korrekt antworten konnte.

http://de.wikipedia.org/wiki/Zuse

Er hatte das Bit-Prinzip, die Aufteilung von Rechenwerk und Speicher als erster, rein mechanisch Konstruiert. Und einen funtkionierenden mechanischen Computer gebaut. Z1.

Dieser wurde über Lochstreifen (Zelluloid-Rolle) mit Befehlen gefütter. Als Energie-Quelle diente eine Kurbel. Die Befehle waren reine "Maschinensprache". Ein BS gab es nicht. Mann konnte nur ein programm darauf ausführen. Das witzige war das es verbotene Rechen-Operationen gab die die Maschine einfach zerstört hätte. ^^

Später baute Zuse auch den ersten Rechner der auf Röhren basierte. Z2. Doch auch dieser kannte so etwas wie ein BS nicht.

Erst mit der Erfindung von Multi-User Systemen wurde es nötig Betriebsysteme zu schreiben. Die ersten Rechner waren ja Raumfüllende Monster die nur Operatoren bedienen durften.

Das Arbeiten musste mann sich so vorstellen:

Auf eine "schreibmaschine" wurde das Programm geschrieben und auh Lochkarten gestanzt. Diese gab der Programmierer dann ins RZ. Dort wurde es dann von den Operatoren ausgeführt und einen Tag oder ne Woche später konnte mann sich dann das Listnig mit den Fehlern anschauen. Und ab gings wieder an die Schreibmachine. ;D

War bestimmt hart damals .. so als Programmierer.

Dann setzte plötzlich eine Miniaturisierung der Hardware ein. Computer werden erschwinglich und "personal". ;) Der PC war geboren. Natürlich gab es da noch div. Vorgänger.

Mit dem PC kamm dann auch die Notwendigkeit auf, einen Computer einem nicht Computerkundigem Menschen zugänglich zu machen, immer mehr Features wurden eingebaut die Dinger wurden immer Komplexer. Und so geschah es, daß Computer heutzutage eine Software brauchen um andere Software auszuführen.