• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Wie programmiert man ein Betriebssystem?

MACRASSI

Gelbe Schleswiger Reinette
Registriert
21.11.04
Beiträge
1.754
Da ich zurzeit leider krank im Bett liege und nicht schlafen kann, kam mir die frage:
Wie programmiert man ein Betriebssystem? (zb. Mac Os X) :)

Grüße Rasmus
 
Der einfachste Weg ist die "Microsoft-Variante": man kupfert ab :-D

Ansonsten gibt es verschiedene Wege. Meistens geht diesem harten Job ein langes Studium voraus. Oder jahrelanges Nerd-Dasein in der Garage. Oder beides. In jedem Fall mit akutem Mangel an weiblichen Kontakten.
 
  • Like
Reaktionen: .holger
Da ich zurzeit leider krank im Bett liege und nicht schlafen kann, kam mir die frage:
Wie programmiert man ein Betriebssystem? (zb. Mac Os X) :)

Grüße Rasmus

Als Buchtipp kann ich empfehlen:
Linus Torvalds: Just for Fun, DTV

Optimalerweise entwickelt man jeweils auch gleich die passende Programmiersprache mit dazu, wie das mit MODULA-2 und Oberon so war...

Auf jeden Fall gute Besserung!
 
Alleine in der heutigen Zeit gar nicht mehr. Sobald man sich bewusst wird, das man auf ein simples Bios aufsetzen muss, dass man selbst für ein Dateisystem sorgen muss, weiß man erst, wie sehr man mit heutigen Programmiersprachen verwöhnt wird.

Randerscheinungen sind dabei verkrüppelte DR-DOS Klone, die meinen höchsten Respekt genieße, mit denen man aber trotzdem nichts anfangen kann, oder eben das xte Linux. Den Projekten sieht man an, dass sie "nur" den Kernel nehmen wollten und dann an jeder weiteren Stufe gescheitert sind und schließen in den Prozess "dann nehmen wir nur den X-Server zum weiterkommen", dann folgten Gnome, Openoffice und schon war es eigentlich eine Standardlinuxdistibution mit anderen Wallpapern - um es mal böse auszudrücken.

Nein, da müssten sich schon sehr viele Leute darum kümmern. Und dann müsste man doch zu den auf dem Markt erhältlichen Treibern kompatibel sein und zu den Programmen, oder eben von Grund auf alles selber machen.
 
warum denkt ihr bei betriebssystemen immer nur an Computer. Die Firmware von Mikrocontrollern in einem X-Beliebigen gerät oder versuchsaufbau ist auch ein Betriebssystem, und das entwickelt man sehr wohl alleine, und zwar in Assembler (Maschinensprache) zwecks der Performance. In C wirds meistens Träge.
 

Tannenbaum ist ein guter Tip.

OS X Internals ist eine Art "Gegenstück". Das sagt Dir zwar nicht, wie man eins programmiert, aber zumindest wie es dann bei OS X funktioniert.
Schau Dir da mal das Kapitel über Speicherverwaltung an. Das ist eine zentrale Funktion moderner Betriebssysteme und in OS X Internals kann man schön sehen, dass das nicht ganz trivial ist -- das Kapitel alleine hat ca. 200 Seiten.

Alex
 
Ein OS ist ein sehr komplexes System.

Wenn man mal reinschnuppern will, kann man mal versuchen I/O für eine Schnittstelle zu programmieren.

Man kann hier ganz "primitiv" in einer Hochsprache anfangen und einzelne Bits/Bytes abfragen und wegschicken und sich dann immmer tiefer Schicht für Schicht nach unten vorarbeiten.
Es ist dann erstaunlich was man unter Umständen alles für sich entdeckt.

Und vielleicht schaffst Dui es ja einen schnellen USB Treiber für OSX zu programmieren.

Gruss

Klaus
 
oder Emacs... aber dort fehlt halt ein guter Editor...
Gruß Pepi
Das war der erste Spruch den ich zu Beginn meines Studiums gehört hatte. Das ist schon etwas her *G*
Alternative zum Tannenbaum ein weiteres Standardwerk der Betriebssystemvorlesungen hier.
 
ich würde dir mal ReactOs.org empfehlen da dort der code eines systems verfügbar ist (so musst du nicht von ganz vorne anfangen)
ausserdem: gute besserung
 
Wie programmiert man ein Betriebssystem? (zb. Mac Os X) :)
Was auch ganz interessant ist, ist das Oberon System. Das ist kleiner und nicht so aufgeblasen wie richtige OS, so daß es da bessere Chancen gibt das ganze zu übersehen.
 
Guck mal da ... geht aber natürlich so nur mit PCs.