Betriebssystem selber machen (sry ist mein 2 Theard ist aber wichtig)

Diskutiere Betriebssystem selber machen (sry ist mein 2 Theard ist aber wichtig) im Off Topic / Small Talk Forum im Bereich Sonstiges; Hallo @ll, wie ihr wisst bin ich noch sehr jung damit ich ein Betriebssystem programmiere!! Aber ich möchte es versuchen bei dem ersten Theard...
Status
Für weitere Antworten geschlossen.
I

ilias07

Threadstarter
Mitglied seit
28.10.2007
Beiträge
60
Alter
25
Hallo @ll,

wie ihr wisst bin ich noch sehr jung damit ich ein Betriebssystem programmiere!!
Aber ich möchte es versuchen bei dem ersten Theard hat es nicht so geklappt !
Mit euer Hilfe könnte ich ein Betriebssystem machen ! Das Problem liegt da ich weiß nicht wie ich anfangen muss ! Vielleicht hat jemand ein Betriebssystem gemacht aber will nicht das alle es erfahren dann nehmen sie mit mir Kontakt E-mail:ilias07@web.de ! Ich bitte euch wer weiß soll es in diesem Theard sagen wie das geht Schritt für Schritt!!Und bitte sagt mir nicht immer das gleiche mit Programmsprache C++ oder so ich will wisen wie man sofort anfägt hab mein bestes gegeben beim googlen hab aber nichts gefunden und mein größter Traum ist ein Betriebssystem zu machen könnt ihr mir pls helfen??

ich danke euch 100mals!

_____________________________________________________________

Sry an den Forum Admin das das der 2 Theard ist tut mir leid
 
S

singh

Mitglied seit
19.09.2007
Beiträge
724
Alter
28
Standort
%windir%
Hallo ilias07,

Ein Betriebssystem selber zu programmieren ist gar nicht so leicht wie du es denkst. An C++ kommst du wieso nicht Vorbei. Für manche Teile des Bootloaders muss man noch in Assembler schreiben. Und die Programmiersprache ist richtig schwer.

Ich würde mir den Quelltext von ReactOS herunterladen (siehe post #2), und versuchen wie schon frankbier sagte, sich zu entwickeln.
Du bist noch recht Jung --> 14 Jahre
Ich würde dir vorschlagen erstmal eine leichte Programmiersprache zu erlernen, damit du das Verständnis eines Programmierers bekommst. Ich würde dir Visual Basic empfehlen. Und danach würde ich mich ste igern und andere Programmiersprachen erlernen ( C, C++ etc.)

PS: Weißt du überhaupt wie ein Betriebssystem funktioniert??

Vielleicht hilft dir das weiter:
Hier ist eine Vorlesungsreihe vom Hasso Plattner Institut über Betriebssystemarchitektur von Pro. Dr. Andreas Polze
Betriebssystemarchitektur
Auf dein PC muss der Real Player installiert sein.
Ich finde diese Vorlesungen einfach genial. Tele-Task sei Dank!!

Wenn du dich durch diese Vorlesungen durcharbeitest, wird dir bestimmt klar wie schwer es ist ein Betriebssystem zu programmieren. Allein an Windows haben mehrere tausend Programmierer gearbeitet.
Das ist eine ganze Wissenschaft für sich alleine !!:D:D

Mfg
Singh
 
Zuletzt bearbeitet:
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
7.989
Hier ist eine Vorlesungsreihe vom Hasso Plattner Institut über Betriebssystemarchitektur von Pro. Dr. Andreas Polze
Betriebssystemarchitektur
Klasse Link, danke! :up

@ilias07: Du benötigst natürlich auch sehr fundierte Kenntnisse über die Hardware, auf der Dein BS laufen soll, das heißt, Du musst Dich auch mit Prozessorarchitektur, I/O, Interrupts usw. beschäftigen.
 
I

ilias07

Threadstarter
Mitglied seit
28.10.2007
Beiträge
60
Alter
25
aber hat es jemand versucht ein Bs zu machen ?? Hat es schon jemand gemacht ein kleines??Ich möchte Schritt für Schritt wiisen wie das geht kann mir jemand sagen??

Thxx
 
S

singh

Mitglied seit
19.09.2007
Beiträge
724
Alter
28
Standort
%windir%
Hallo ilias07,

Linus Torvald

Und er hat nicht mal das ganze Linux-Betriebssystem selber programmiert. Nur den Linux-Kernel.

Man könnte ein Betriebssystem erstellen auf Basis von Linux. Den Kernel von Linux benutzen nur mit eigenen Anwendungen.
Aber wie schon gesagt dafür muss man Wissen wie ein Betriebssystem funktioniert.
http://www.amazon.de/Moderne-Betriebssysteme-Andrew-S-Tanenbaum/dp/3827370191
Hier das Inhaltsverzeichnis des Buches:
http://www.pearson-studium.de/media_remote/katalog/toc/9783827370198toc.pdf?SID={7F3D0CEE-E751-4604-A409-AF147FA83EE4}&TOKEN={76133A06-B91B-45F3-87CB-22BC9B2787C9}

Links:
http://www.christianroepke.de/dokus/OS-Basics-Teil2.pdf
http://www.galileocomputing.de/openbook/it_handbuch/fachinformatiker_05_os_konzepte_001.htm#mjff6de50cb5027b179c3cf02ddd8b4ad0

Mfg
Singh
 
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
7.989
Hallo ilias07,

Linus Torvald

Und er hat nicht mal das ganze Linux-Betriebssystem selber programmiert. Nur den Linux-Kernel.
und selbst dabei hat er sich an Vorgaben und Beispielen orientiert (wobei er ja heftige Diskussionen mit dem Professor Dingenskirchen (der Name fällt mir gerade nicht ein) hatte, welcher seine eigenen Methoden für absolut und unumstößlich hielt. (Ich hab vor ein paar Jahren mal dieses Büchlein von Linus Torvald gelesen)
 
I

ilias07

Threadstarter
Mitglied seit
28.10.2007
Beiträge
60
Alter
25
kann mir jemand sagen wie ich anfangen soll?
 
S

singh

Mitglied seit
19.09.2007
Beiträge
724
Alter
28
Standort
%windir%
Hallo ilias07,

Wie man anfangen soll?? Sehr schwierige Frage.

Um die Wahrheit zu sagen, fang an den Aubau des Betriebssystem zu analysieren und lerne programmieren. Sonst kommt man nicht weiter.
Wenn man nicht weiß wie ein Betriebssystem funktioniert, dann kann man auch nicht so eins selber erschaffen.

Mfg
Singh
 
D

dlonra

Mitglied seit
19.10.2005
Beiträge
1.149
Also ich kann mit Fug und Recht behaupten, dass ich schon ein Betriebssystem programmiert habe..
Echt ohne Häghäää...

Es handelte sich um einen Mikrokontroller. Genauer es war ein Intel 8 Bit Kern drin. Naja ein Betriebssystem muss eine Programmierschnittstelle bieten.
Mein Betriebssystem hatte Gleitkommaroutinen für Multiplikation Division Addieren und Subtrahieren. Auch gab es eine Wurzelziehfunktion, ein Mischung der anderen 4 Funktionen. :D
Naja ist nicht so einfach eine Festzahlen ALU in Assembler beizubringen wie er mit Kommazahlen rechnen soll. (Ohne Fehler versteht sich :D)

Wenn du so willst war im Eprom somit ein Betriebssystem.
Mit dem einem Port konnte man 8 Spannungen messen und mit diesem Zahlenwert weiter rechnen... (über einen anderen Port was ansteuern)
Das Betriebssystem hatte also Funktionen die man ganz leicht weiter verwenden konnte für ander Aufgaben je nach Programm.

DAS war 15 Jahren, wo es noch kein Internet gab..
Seit es Internet gibt... hab ich dieses Hobby verloren LLLLEEEIIIIDDDEEERRR
:D
 
D

dlonra

Mitglied seit
19.10.2005
Beiträge
1.149
Am einfachsten ist es einen Mikrocontroller zu programmieren.
Dafür kauft man sich am Besten ein Einsteigerbuch.
Ich hatte eins von ELEKTOR an der Berufsschule ausgeliehen.
Elektor ist ein gute Adresse für Elektronik und solche Sachen für Bastler.
Von Elektor hatte ich mir damals das Board mit Controller und ganz wichtig dem
EProm bestellt. In diesem Eprom war ein kleines Programm drin um über Serielleschnittstelle mit dem PC zu komumizieren.

Wenn du vor hast für den PC ein Betriebssystem zu schreiben ;) kannst dich auf viele Sachen gefasst machen. Da musst du alle Protocolle verstehen.
Zu diesen Protokollen gehört der IDE Bus, USB, Paralle und Serielport.
Natürlich muss man auch noch den PS-2 Port für die Maus ansprechen.
Aber das wichtigste wird am Anfang sein die einzelnen Port-Adressen aus dem Bios zu lesen. Das Bios (des Mainboard) Scant die Hardware des PC's, um die Adressen der einzelnen Port's zu erhalten. Natürlich muss man aus dem Bios auch auslesen wo der Arbeitsspeicher anfängt und aufhört.
Man kann den PC auch ohne Bios programmieren, dann wird das Betriebssystem aber nur auf deinem PC funktionieren, da das Bios die Standart-Schnittstelle zur Hardware darstellt.

Aber damit ist es noch nicht Schluß. Da in jeder Festplatte, Maus, Tastatur etc. verschieden Controller eingebaut sind (mit unterschiedlichen Befehlsätzen z.B für Mäuse) kannst auch hier nur deine Hardware im Endeffekt ansprechen und das Betriebssystem nicht für andere PC's benutzen.
Dafür gibt es Windows Ubuntu usw., da diese Standartiesiert Treiberschnittstellen für die Hardware beinhaltet.
Der große Verdienst von Microsoft ist es, dass sie die Standarts für die Hersteller und derer Treiber festgelegt hat und weiter verfeinert.
Also der Hersteller einer Hardware muss einen Treiber programmieren für den in der Hardware verbauten Controller.

Dem Windowsprogrammierer kann es im Endeffekt egal sein was für eine Hardware angeschlossen wird er hat eine feste Windows-API die mit dem Treiber arbeitet. Ich hab mal die Soundkarte programmiert mit der Windows-API. (Also einen eigenen Mediaplayer)
Oh Wunder der hat auch nach dem tausch der Soundkarte noch funktioniert.

Wenn du also die Soundkarte ansprechen willst mit deiner Hardware ist nicht sicher gestellt das sie auf jedem PC dan funktioniert mit deinem BS.
Du müsstes einen Softwareschnittstelle entwickeln an den sich die Herstller dann in Form von passenden Treibern halten. von der Grafikkarte möchte ich erst gar nicht anfangen. Aber dir bleibt nur OPENGL da es sonst ärger von Microsoft gibt, wenn du deren DirectX Grafik Befehlsatz auf der Grafikkarte benutzt und damit Kohle verdienen willst.
An Kohle verdienen kannst auch nicht denken, da du wahrscheinlich gegen so viel Patente verstöst. Naja sind wir froh das Microsoft und Linux die Drecksarbeit gemacht hat. :aah
 
B

buma

Mitglied seit
04.01.2007
Beiträge
2.705
@ilias07:

Es gibt keine Schritt-für-Schritt Anleitung um ein selbstständiges BS zu entwickeln. Dafür ist es zu kompliziert. :blush


Es ist genauso wie ein eigenes Auto bauen (bzw. noch schwieriger :D) .. du kannst nicht einfach nach Anleitung Zuhause ein Motor zusammenstellen :satisfied


Sorry, aber ich habe das Gefühl, dass du nicht mal richtig programmieren kannst. :unsure


Lerne erstmal Sprachen, programmiere eigene Programme usw.. :)
 
D

dlonra

Mitglied seit
19.10.2005
Beiträge
1.149
Es läßt mich jetzt nicht mehr los, ich glaub die Protokolle mußt nicht wirklich können. Der IDE-Controller, USB-Controller usw. können das Protokoll von sich aus richtig. Ein Sorgenkind weniger. Nur musst die Controller mit dem richtigen Maschinenbefehl dazu veranlassen etwas zu Tun :D
 
I

ilias07

Threadstarter
Mitglied seit
28.10.2007
Beiträge
60
Alter
25
und wenn ich fragen darf hat jemaden schon versucht ein BS zu machen??
 
Serge

Serge

Mitglied seit
20.08.2002
Beiträge
5.264
Alter
51
Standort
Zürich
ilias07, Du hast diese Frage (Wie mache ich mein eigenes BS) schon mal gestellt, erzähl uns doch mal, was Du seitdem gemacht, oder gelernt hast (Programmieren lernen, usw)...
 
I

ilias07

Threadstarter
Mitglied seit
28.10.2007
Beiträge
60
Alter
25
Ich habe sehr viel gelesen und gelernt über Programmsprachen z.B C++ bei vielen Seiten !! Hab auch über Assembler und Linux Kernel gesucht aber leider nur wenig verstanden:( . Aber was ich raus gefunden hab ist wie der PC gestartet wird:
1. Computer wird eingeschaltet
2. BIOS wird gestartet
3. BIOS checkt die Hardware (CPU, RAM, ...)
4. BIOS startet den Bootloader von Speichermedium (Diskette, CD, Festpatte, USB-Stick...)
5. Der Bootloader startet den Bootvorgang des Betriebssystemes
6. Das Betriebssystem kommuniziert über das BIOS mit der Hardware.
Hab auch über Prozessoren ,Grafikkarten usw gelesen welches das beste ist und welches nicht.
Und das wars , was ich bisher getan hab.
 
C

crome

Gast
Schon mal ein Anfang...

Was kannst du denn schon so programmieren? Und in welcher Sprache?
 
D

dlonra

Mitglied seit
19.10.2005
Beiträge
1.149
@illias

Also..... der Prozessor sitzt in der Mitte.
Der Prozessor kann nur zählen, der eine schneller der ander langsamer (ein Geldfrage).
Der Prozessor fängt bei der Adresse 0 (Offset des Arbeitspeicher) an, die Maschinenbefehle der Reihe nach einzulesen.
0: Mov R1,ACC
1: Add ACC, R2
.
.
.

Sagen wir mal eine 32bit CPU kann 2GByte addresieren.

Und jetzt kommt das Bios ins Spiel !

Der Mainboardherstelle hat eben für die einzelnen Controllern im Bios festgelegt
unter welcher Adresse, aus den 32bit bit breiten Adressbus, man den Controller erreichen kann.
Zudem hat der Hersteller auch gleich die Hardware-Interrupt-Pins des Prozessors den einzelnen Controllern zugewiesen.
Interrupts braucht man für "Multi-threading" """die Hardwareinterrupts nicht direkt"", aber wenn die Hardware den Interrupt bring macht der Prozessor mal schnell einen anderen Prozess zu Ende und kehrt zum alten Programm zurück.

Der Prozessor hat auch Software-Interrupts, diese sind dafür verantwortlich, dass du unter Windows mehrere Fenster "Programme" qusi gleichzeitig laufen.
(bei den neuen CPU's wirklich) Er switcht je nach Thread-Priorität zwischen den Threads hin und her.

Das mit den Intruppts ist Multithreading und ist das schwirgiste was man sich vorstellen kann beim Programmieren auf Maschineneben (Assembler).

Also der Prozessor fängt bei NULL an zu zählen und holt sich aus dem Arbeitspeicher die Befehle des Programms.
Man kann also über den Adressbus die IDE-Controller usw. ansprechen.
Das Bios weiß unter welcher Adresse der Controller anzusprechen ist.

Nicht nur der Hauptprozessor hat einen Befehlssatz, sondern die einzelnen kleinen Controller haben auch einen Befehlssatz.
Unter Umständen muss man sogar beim Hochfahren noch Firmware's reinladen.

Naja ist ein interessantes Thema :D
 
Status
Für weitere Antworten geschlossen.
Thema:

Betriebssystem selber machen (sry ist mein 2 Theard ist aber wichtig)

Betriebssystem selber machen (sry ist mein 2 Theard ist aber wichtig) - Ähnliche Themen

  • Clean Install von Windows 10 - Betriebssystem crasht andauernd

    Clean Install von Windows 10 - Betriebssystem crasht andauernd: Guten Morgen, ich hatte mit der Auslastung meines Arbeitsspeichers zu kämpfen, habe auch nicht wirklich gewusst was ich machen kann, da ich den...
  • Windows 10 Betriebssystem auf PC ohne Betriebssystem?

    Windows 10 Betriebssystem auf PC ohne Betriebssystem?: Hallo, ich habe mir einen Gaming-PC gebaut doch er besitz kein Betriebssystem. Wie bekomme ich Windows 10 auf diesen PC herauf?
  • Betriebssystem clonen

    Betriebssystem clonen: Ist es möglich ein Betriebssystem Win 10 64 bit von einer SSD auf eine M2NVMe zu clonen.
  • Betriebssystem Windows 10

    Betriebssystem Windows 10: Ich hoffe, das lesen auch die Windows-Entwickler. Vor 3 Monaten hatte ich meinen PC in einer Reparaturwerkstatt, weil nichts mehr ging, ein...
  • Funktionsupdate beschädigt Betriebssystem

    Funktionsupdate beschädigt Betriebssystem: Hallo. Habe das Funktionsupdate von win 10 1803 auf 1809 durchgeführt. Download-Installation-Mehrfach Neustarts. Nach dem 10 Neustart wurde mir...
  • Ähnliche Themen

    • Clean Install von Windows 10 - Betriebssystem crasht andauernd

      Clean Install von Windows 10 - Betriebssystem crasht andauernd: Guten Morgen, ich hatte mit der Auslastung meines Arbeitsspeichers zu kämpfen, habe auch nicht wirklich gewusst was ich machen kann, da ich den...
    • Windows 10 Betriebssystem auf PC ohne Betriebssystem?

      Windows 10 Betriebssystem auf PC ohne Betriebssystem?: Hallo, ich habe mir einen Gaming-PC gebaut doch er besitz kein Betriebssystem. Wie bekomme ich Windows 10 auf diesen PC herauf?
    • Betriebssystem clonen

      Betriebssystem clonen: Ist es möglich ein Betriebssystem Win 10 64 bit von einer SSD auf eine M2NVMe zu clonen.
    • Betriebssystem Windows 10

      Betriebssystem Windows 10: Ich hoffe, das lesen auch die Windows-Entwickler. Vor 3 Monaten hatte ich meinen PC in einer Reparaturwerkstatt, weil nichts mehr ging, ein...
    • Funktionsupdate beschädigt Betriebssystem

      Funktionsupdate beschädigt Betriebssystem: Hallo. Habe das Funktionsupdate von win 10 1803 auf 1809 durchgeführt. Download-Installation-Mehrfach Neustarts. Nach dem 10 Neustart wurde mir...
    Oben