Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Betriebssystem :X (https://www.delphipraxis.net/110146-betriebssystem-x.html)

Neutral General 13. Mär 2008 16:37


Betriebssystem :X
 
Hi^^

Also mir ist gerade langweilig und deswegen will ich ein Betriebssystem programmieren.
..
...
....
:mrgreen:

Ok so naiv bin ich mittlerweile nicht mehr (war ich glaube ich auch noch nie :stupid: ) aber trotzdem :P

Im Prinzip stimmt der erste Satz dieses Threads sogar. :duck:
Aber der zweite stimmt auch :corky:

Ok genug um den heißen Brei drumrum geredet :wink:

Letztens habe ich mich etwas "aufgeregt" als ich meine C:\ Festplatte mal untersucht habe und mich oft gefragt habe: "Was ist denn das bitte gut?". Windows ist so groß und mach im Hintergrund sooo viel, von dem man erstmal gar nichts mitbekommt. Und da dachte ich mir: So ein kleines "einfaches" Betriebssystem wo man als nicht total-DAU weiß, was das Betriebssystem macht und wofür dieses und jenes ist, wäre doch mal nicht schlecht.

Heutzutage hat man Gigabytes von Daten auf seinem PC aber selbst als Programmierer weiß man nicht genau was da überhaupt alles vorgeht. 1000nde von Programmen, DLLs oder sonstige Daten die irgendwelche seltsamen Namen tragen und deren Funktion wohl Gott alleine kennt.

Letztendlich hat das bei mir dazu geführt das ich mir dachte: "Da gab es doch mal so ein Tutorial mit dem man "Betriebssystem" programmieren konnte" (oder besser gesagt ein bootfähiges "Etwas" :mrgreen: )

Aber was habe ich davon wenn ich ein paar Zeilen/Seiten ASM ausm Internet abschreibe? Würde das ganze schon gerne son bisschen verstehen. Wie ist so ein Betriebssystem aufgebaut? Wie arbeitet ein Betriebssystem intern? Na gut, man kennt z.B. sowas wie Messages von Windows aber Messages sind ja im Prinzip schon High-Tech im Gegensatz zu dem, was dadrunter verborgen ist.

Also ich habe hier nicht die Absicht ein richtiges OS (erst recht nicht eins, das mit irgendeinem anderen vernünftigen mithalten kann ;) ) zu programmieren aber mich interessiert das ganze doch mal und ich würde einfach gerne mal sehen was dahinter steckt und wie weit man da als Neutral General alleine kommt. (Ja ich weiß: Wahrscheinlich nicht weit, aber ich wills selbst mal probieren :) )

Gruß
Neutral General

igel457 13. Mär 2008 16:49

Re: Betriebssystem :X
 
Meiner Meinung nach ist das komplizierteste der Bootloader - aber den gibt es auch schon fertig. Danach kannst du eigentlich sogar ganz normal mit Delphi weiter programmieren.

Siehe auch hier: http://www.homix-online.de/homixos/

Leider ist sein Tutorial, wie man selbst Betriebsysteme mit Delphi schreiben kann gerade nicht Online.

Larsi 13. Mär 2008 17:05

Re: Betriebssystem :X
 
Kann man dann nur Konsolenbasierend in Delphi arbeiten oder auch richtig mit fenstern und so? Aber delphi verwendet doch exe dateien, oder? Wie soll man dafür ein Betriebssystem machen, das ist doch voll schwer oder macht genau das son botloader?

Chewie 13. Mär 2008 17:11

Re: Betriebssystem :X
 
Mach dich zunächst mit der Hardware in deinem Rechner vetraut.

Wenn du weißt, welche Bauteile sich so alles in der CPU und "Umgebung" befinden, dann weißt du auch ungefähr, was ein Betriebssystem grundlegend leisten muss.

Klaus01 13. Mär 2008 17:12

Re: Betriebssystem :X
 
Zitat:

Zitat von Larsi
Kann man dann nur Konsolenbasierend in Delphi arbeiten oder auch richtig mit fenstern und so? Aber delphi verwendet doch exe dateien, oder? Wie soll man dafür ein Betriebssystem machen, das ist doch voll schwer oder macht genau das son botloader?

Ob Konsole oder nicht, Delphi Programme benötigen
ein Win32 kompatibeles Betriebsystem.

Grüße
Klaus

igel457 13. Mär 2008 17:13

Re: Betriebssystem :X
 
Nicht wenn du die System.pas umschreibst.

EDIT: Du kannst dann weder VCL- noch Konsolenprogramme, sondern einfach nur Programme schreiben - das ist das selbe wie wenn du einen Mikrocontroller programmierst.

BUG 13. Mär 2008 17:29

Re: Betriebssystem :X
 
Ich verweisen da gerne auf LowLevel,
die haben viele interessante Sachen zum Thema OS-Entwicklung,
besonders die Magazine sind lesenswert.

MfG,
Bug

Neutral General 13. Mär 2008 17:33

Re: Betriebssystem :X
 
Hi,

Danke schonmal für die Antworten. Gibt es irgendwo eine Liste mit konkreten grundlegenden "Features" die ein OS haben muss. Also irgendwas, einen Ansatz, was überhaupt vor mir liegt und wie ich das ungefähr machen muss/müsste.

Kann im Moment keine guten Fragen stellen, weil man auch ein gewisses Wissen braucht um Fragen stellen zu können und das besitze ich leider nicht :|


EDIT: Danke BUG! Das sieht doch schonmal vielversprechend aus!


Gruß
Neutral General

bluesbear 13. Mär 2008 17:38

Re: Betriebssystem :X
 
Zitat:

Zitat von igel457
Du kannst dann weder VCL- noch Konsolenprogramme, sondern einfach nur Programme schreiben - das ist das selbe wie wenn du einen Mikrocontroller programmierst.

Ja, das war auch mein erster Gedanke. Man muss erstmal die Hardware vollständig kennen. Bei einem modernem PC ist das für mich eine Horrorvorstellung! Ein Filesystem programmieren, Treiber für verschiedene Komponenten... Hölle!
Microcontroller sind cool, das macht Spaß. Ich hab sogar ein LEGO Minstorms :-D Aber auch dafür benutze ich lieber vorhandene Betriebssysteme. NQC oder so.

stefan2005 13. Mär 2008 17:40

Re: Betriebssystem :X
 
Hi,
Bootloader ist sicherlich kompliziert, weil er in Assembler geschrieben werden muss und bis auf die BIOS-Funktionen auf nichts zugreifen kann, aber es gibt auch viele fertige und freie Bootloader, wie z.B. GRUB, den man auch auf Diskette installieren kann. Dieser würde am Anfang lästiges Zeug abnehmen. (z.B.: Laden weitere Dateien von einer FAT Diskette, wechseln in den 32-Bit Protected-Mode, ...)

Um zu verstehen was ein Betriebssystem macht, muss man sicherlich viel Zeit haben und viel lesen und rumprobieren. Einige Ansatzstellen kannst du sicherlich auf der deutschsprachigen Seite Lowlevel (keines Wiki, einige ältere kleine Magazine, IRC-Channel, Forum) finden!

Wenn du eine "HighLevel" Programmiersprache wie z.B. Pascal oder C/C++ verwenden willst, musst du dir natürlich auch einen Compiler raussuchen. Theoretisch eignet sich dafür auch ein Delphi Compiler (du benötigst lediglich einen kleinen PE-Zwischenloader nach dem Bootloader) mit einer eigenen System.pas. Somit stehen natürlich keine Delphi-üblichen Funktionen parat, sondern nur die Sprache an sich. Jedoch muss man auch für FreePascal oder diversen C/C++ Compilern eine eigene RTL bzw c-lib schreiben (und auch Inline-Assembler verwenden) und hier steht natürlich dann genauso nur die Sprache und keine Bibliothek an Funktionen bereit. Ich bevorzuge in letzter Zeit FreePascal, einzig allein aus dem Grund, da hier "erkennbare" Ansätze einer 64-Bit Variante inzwischen zur Verfügung stehen.

Was für Features ein OS braucht lässt sich schwer sagen, weil man von Grund auf etwas eigenes designen kann. Erst im Verlauf der Entwicklung wirst du merken was du als nächstes haben willst oder brauchst.

Grüsse,
Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:58 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz