Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 06.06.2007, 14:14 Titel: |
|
|
Aber dennoch Assembler oder zumindest C sollte man schon können xD.
Die Zutaten für ein eignes (kleienes) Betribsystem (auf Diskette):
nASM: ein (sehr guter, wenn nicht sogar der beste) complir, um die für das eigne os benötigen binärdateien erstellen zu können.
Rawwritewin: um das Ganze auf Diskette zu bekommen.
Qemu oder Bochs (PC emulatoren)
Mehr braucht man dafür eigendlicht nicht, um einen eigenen Kernel zu testen, ohne jedes mal den PC neuzustarten.
Die Ergänzungen gibts hier:
http://lowlevel.brainsware.org/
DA findet man auf alle Fragen die Passende Antwort beim proggen von Betribsystemen.
Duch das Magazin(nicht zu unterschätzen) kann man ganz schnell zu einem ergebniss kommen
Alles Freeware
Zitat: | Der Kernel MUSS in ASM sein. Den Rest kann man mit QB erledigen. |
QB wirkt zu veraltet. Wenn dan schon FB
Ein OS zu Proggen, welches anstelle von MS-DOS eine Freebasic Interface Lädt und alle Befehle (auser nätürlich die von Windows, wegen der Inkompatibelität) hat und die Bas Dateien (die als Text stehen) direckt als Programme startet.
Achja das Problem mit ASM könnte man relativ leicht umgehen das FB ja auch einen INLINE ASSAMBLER hat.
Also unmöglich wäre das nicht.
Kernel in C rest in FB xD |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 06.06.2007, 18:05 Titel: |
|
|
Warum unterschätzen hier viele die Arbeit, die "nur" in einem Kernel steckt? oO _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 06.06.2007, 18:49 Titel: |
|
|
Es soll ja leute geben, die so ein Kernel mal eben beim Frühstück schreiben _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4597 Wohnort: ~/
|
Verfasst am: 06.06.2007, 19:10 Titel: |
|
|
Ein kerniges Frühstück _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 06.06.2007, 19:17 Titel: |
|
|
@nemored:
@AndT:
Das "erste" (war nicht das erste, das erste hatte A.K. offensichtlich alleine, der Name wurde jedoch übernommen) ist nie wirklich reif genug zum Benutzen gewurden, deshalb gibt es davon weder offizielle Binarys noch den Source.
Das Projekt "exorc32" dagegen wird gerade vorbereitet, soll dann demnächst mal richtig beginnen. Darum geht es um einen 32-Bit-PM-Kernel. Ein Grundgerüst mit den absolut wichtigsten Funktionen (GDT, IDT, PIC, Timer (PIT) und ein paar Port- sowie Debugfunktionen) hab ich vor ein paar Tagen fertig gestellt. Danach kommt dann (in Gemeinschaftsarbeit!) Paging, also Speicherverwaltung und das Multitasking. Ich hoffe, dass wir das so spätestens in der 1. Hälfte des nächsten Monats in den Grundzügen haben, die wenigsten können halt full-time an einem Projekt arbeiten, leider.
Sobald es was ansatzweise verwendbares gibt, wird der Source inkl. Binary vorgestellt. (Es ist hoffentlich verständlich, dass ich noch keinen Code rausgeben möchte.)
Wenn du aber irgendwelche Fragen zum Thema OS-Dev hast kannst du natürlich einfach losfragen. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 06.06.2007, 21:42 Titel: |
|
|
Versuch mich jetzt an FreebasicOS...
Das ganze kann man sich so ähnlich wie beim C64 vorstellen .
Nur eben FreeBasic als Sprache
Wenns soweit ist meld ich mich wieder..
|
|
Nach oben |
|
|
Meteorus
Anmeldungsdatum: 03.02.2007 Beiträge: 405
|
Verfasst am: 07.06.2007, 01:04 Titel: |
|
|
AndT hat Folgendes geschrieben: |
Wenns soweit ist meld ich mich wieder..
|
Freue mich schon drauf, um zu lachen.
mfg Meteorus _________________ Windows 2000 - mein Favorit unter den Betriebssystemen -> www.windows2k.de.ki <- + ->www.windows-wiki.de.ki <- |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 07.06.2007, 15:54 Titel: |
|
|
Naja, ist zwar Offtopic...
Es ist nicht generell unmöglich, aber imho mit zusätzlichem Mehraufwand verbunden. Der FBC erzeugt ausführbare Dateien, die an ein bestimmtes System angepasst sind. Die RTL wird standardmäßig da mit reingelinkt.
Ich glaub's eher weniger (), aber falls du das schaffen solltest, Respekt. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
csde_rats
Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 07.06.2007, 16:05 Titel: |
|
|
Mao hat Folgendes geschrieben: |
Ich glaub's eher weniger (), aber falls du das schaffen solltest, Respekt. |
traurig aber wahr: durch die vielen trolle die auch das gesagt haben muss ich mao zustimmen ...
Zitat: |
Versuch mich jetzt an FreebasicOS...
Das ganze kann man sich so ähnlich wie beim C64 vorstellen durchgeknallt.
Nur eben FreeBasic als Sprache zwinkern
Wenns soweit ist meld ich mich wieder..
happy
|
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 09.06.2007, 13:11 Titel: |
|
|
Kann ich auch einen Linuxkernel dafür nehmen? |
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 09.06.2007, 17:18 Titel: |
|
|
Und wo ist die Verhältnismässigkeit bzw. die eigenen Entwicklung?
Ich meine, wenn man den in C Geschrieben Linux Kernel als Grundlage nimmt um darauf mit einen Compiler dessen Libary in C geschrieben ist ein "Betriebssystem" schreibt ...
Okey, es wäre durch aus Interessant ein Linux zubauen auf dem der Freebasic Compiler gerade so läuft aber das eher eine Arbeit am GNU/Linux Quellcode als ein Freebasic Betriebssystem. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
|
csde_rats
Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 09.06.2007, 17:47 Titel: |
|
|
AndT hat Folgendes geschrieben: | Kann ich auch einen Linuxkernel dafür nehmen? |
ich gehe mal davon aus, dass du nicht Linus Thorwalds bist, daher nein. Denn der ist ja
- Nicht in Freebasic geschrieben
- Nicht von dir geschrieben
- und damit auch kein FBOS
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 09.06.2007, 19:39 Titel: |
|
|
egal
Dann wird das Ganze ein Microkernel, der dann später Stück für Stück ausgebessert wird.
Nein spass. Ich muss ersteinmal einen Weg finden, Freebasic ins Binäre zu bekommen, welches auchnoch Plattformunabhängig läuft und das wird kompliziert. Da mann ja dennoch alle Befehle drinnhaben will.
Den Sourcecode von fbc(0.16) hab ich. Doch in welcher Datei stehen die ganzen Befehle ??? (ausser RTL.bi) |
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 10.06.2007, 14:43 Titel: |
|
|
http://www.freebasic.net -> Originale Sourcen-Quelle.
Wenn du schon, sorry, nicht die benötigte Ahnung vom Aufbau eines Programms hast, das vom FBC erzeugt wird, dann wird's "leicht" schwer, dein Ziel zu erreichen.
"Alle Befehle" hast du nur, wenn du die RTL hast. Und auch die baut z.T. auf's Betriebssystem sprich den Kernel auf - eben den, den du mit allen Befehlen schreiben willst. Das beißt sich einfach gegenseitig. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
c.m.obrecht
Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 12.06.2007, 13:41 Titel: |
|
|
Habe das Beispiel von den Links (Lovlewel-Magazin) ausprobiert; in der VM sowie auf dem Pentium 133 Laptop startet es wunderbar, doch wieso nicht auf dem Pentium 4?
Die Arbeit kann gut unterschätzt werden; ein kleines Progrämmchen welches startbar ist geht ja noch, man hat die BIOS-Funktionen unter ASM, Interrupts und APIs natürlich nicht. Aber die Compiler brauchen ja genau diese; wenn man von einem FB-Programm nach Kompilieren den Assemblercode anschaut sieht man dass das schwer werden dürfte; die Funktionen greifen doch über ein Betriebssystem zu, wie gesagt oben; und diese Funktionen müssten alle zuerst in ASM oder C (ohne stdio) geschrieben werden; oder eben ein ganz neuer FB-Compiler welcher keine APIs und nichts dergleichen anspricht... _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
|
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 12.06.2007, 14:33 Titel: |
|
|
Jetz kann ich es mir nich länger mit ansehn...
Wieso macht ihr es euch so schwer?
Der Sourcecode von FB ist offen, was spricht dagegen, einen passenden Linker zu coden für sein eigenes OS?!? |
|
Nach oben |
|
|
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 12.06.2007, 16:46 Titel: |
|
|
Ich hab jetzt die Source 0.17 libfb-v0.17b-src.zip gezogen und einen kleinen Testkernel für den PM hab ich schon geschrieben. Er initalisiert bis jetzt nur Standardgeräte (Maus, Tatatur und natürlich die gute alte Console, die mit "load fb" das Binäre modul von Freebasic laden soll.
(Das sind ja auch nur 451 Zeilen^^)
Und mit cyglib und rtllib hab ich Freebasic ist jetzt endlich binär (und mit 251 kb) auch nicht Sonderlich gross.
Laufen tuts nicht, da der Kernel irgendwie die hälfte der Befehle vergisst und Exeptions keine seltenheit sind (auch durch nichts machen ). Mittlerweile steht und die warscheinlichste Methode ihn zu beheben ausgeführt wird scheitert dies dann wird erneut abgefangen, indem mitten im Bildschirm einfach CRASH! steht
Ich finds irgendwie Lustig xD.
Fazit: Ohne den Sourcecode oder das eigne OS anzpassen klappt es nimmer!
Und darum ist das Projeckt erst einmal eingestellt. |
|
Nach oben |
|
|
|