Eigenes OS?
-
... nun auch 24/32 bit Farben. ^^
-
MrX hat - basierend auf Cuervo's Treiber für COMx - die Funktion serial_log eingebaut, dessen Ausgaben über COMx man z.B. bei VBox oder qemu in eine Textdatei umleiten kann. Ich habe dies sofort im vm86-monitor anstelle printf getestet, und es lief prächtig, langsam in VBox und schnell in qemu.
http://henkessoft.de/OS_Dev/Bilder/serielle1.txt
-
Nun besitzt der Kernel auch die Fähigkeit, sich als Multi-Boot-fähiges OS laden zu lassen, eines der Ziele von Anfang an.
-
APM sorgt für einen shutdown durch Kommandoeingabe. Funktioniert noch nicht rund, aber ein anfang ist gemacht.
-
Am 30.08.2010 schrieb ich:
Nach vm86 mit vbe der nächste Schritt in Richtung GUI. Die Anziehungskraft des klicki-bunti ist nicht zu brechen.
Ja, nun ist es soweit. PrettyOS hat einen GUI-Ansatz! Mal gespannt, wie weit hier die Neugier und die Kräfte tragen.
Ein interessantes Vorbild aus User-Sicht ist immer noch die klassische WinAPI:
http://www.henkessoft.de/C++/WinAPI/WinAPI Kapitel 1 bis 6/api1.htm
http://www.henkessoft.de/C++/WinAPI/WinAPI_GDI/WinAPI_7_GDI.htm
-
Was ist mit dem Vorbild des Framebuffers aus der Linux Welt
-
Allen Entwicklern, Nutzern, Beobachtern, Freunden und Gönnern von PrettyOS wünschen wir frohe Festtage und einen Guten Rutsch nach 2011.
-
... und ein frohes, erfolgreiches Neues Jahr 2011! Viel Kraft, Gesundheit und gute Ideen.
-
Erhard Henkes schrieb:
Ja, nun ist es soweit. PrettyOS hat einen GUI-Ansatz!
Mach mal einen Screenshot, Bitte.
-
@MrX: kannst Du dies bitte uebernehmen? (habe momentan keinen Rechner hier, nur mail-Zugang)
-
Hi,
Könnt ihr mir sagen mit welcher Toolchain ich das kompilieren muss ?
Ich habe das Tutorial von "http://www.henkessoft.de/OS_Dev/OS_Dev1.htm" ausprobiert, letztens mit Cygwin. Aber ich bekomme beim linken immer den Fehler "File format not recognized"
Und wenn ich statt 'aout' z.b. 'elf' nehme, heißt es "cannot perform PE operations on not PE files" und wenn ich 'bin' nehme kann ich keine externen Referenzen einsetzenHoffe ihr könnt mir helfen,
Lg Dark
-
Probiere bitte mal das angegebene DJGPP aus:
http://www.osdever.net/downloads/compilers/DJGPP-Installer-nocpp.exeBei späteren Versionen des Linkers ld gibt es Probleme mit Mischungen aus 16/32-Bit-Code.
http://www.henkessoft.de/OS_Dev/OS_Dev1.htm#mozTocId29572
Hinweis:
Ich empfehle diese DJGPP-Toolchain (gcc 3.1, ld 2.13, ...), da bei Einsatz der MinGW (GCC) Compiler Suite über Linker-Probleme mit dem in diesem Tutorial erfolgreich verwendeten NASM Output-Format a.out (assembler output)-Objektdatei-Format (inzwischen durch COFF und ELF abgelöst) berichtet wurde.Inzwischen wurde im zweiten Ansatz (siehe Teil 2 dieses Tutorials) ein Work-around gefunden:
http://www.henkessoft.de/OS_Dev/OS_Dev2.htm#mozTocId42018
http://www.c-plusplus.net/forum/viewtopic-var-p-is-1736328.html#1736328
-
Momentan haben wir eine "Durchhängephase". Niemand hat Zeit, Energie usw. genug, um ein so komplexes Projekt auf freiwilliger Basis weiter zu treiben. Auch solche Zeiten gehören dazu.
-
Glücklicherweise zieht es langsam wieder an. Großes Lob an die Developer, die PrettyOS in voller Blüte erhalten und sogar weiter verfeinern. Namentlich erwähnen möchte ich MrX, der nun ca. 1 Jahr bei diesem Thema dabei ist.
-
Wow. Ich habe die ersten Seiten überflogen und dachte nur "Was für ein endlos erscheinender Aufwand". Dennoch bleibt ihr anscheinend bei der Sache (wayne Flauten) und zeigt richtig Durchhaltevermögen!
Ich habe mich bisher nicht intensiv mit solchen Themen beschäftigt, aber es kann gut sein, dass ich das Tutorial Mal reinschauen werde. Und auch sonst großes Lob an euch
-
großes Lob an euch
Danke für das positive Feedback! Komm einfach dazu. OSDev hat den gigantischen Charme des völlig Ausgefallenen.
-
Ich hab mir den Thread nicht komplett durchgelesen, aber dein Tutorial find ich bisher echt richtig gut. Ich habe mich schonmal kurz mit Assembler beschäftigt, dann aber mangels an Verständnis wieder abgebrochen. Bin dann letztens doch wieder auf die Idee gekommen mal ein eigenes kleines OS zu schreiben, da mir kein Projekt( normales Programm ) mit C/C++ eingefallen ist was mich motiviert hat. Ich wollt nicht was machen wo ich recht schnell fertig bin, sondern was wo länger geht und wo ich auch immer weiter ausbauen kann, was aber gleichzeitig auch weiterhin motiviert und mir viel bringt( in Bezug auf lernen ). Dadurch kam ich dann wieder auf die Idee mich mit Assembler und anschließend mit der OS-Entwicklung zu beschäftigen, dabei bin ich dann über dein Tutorial gestoßen und arbeite es gerade durch und es ist echt top. Werds jetzt erst mal durcharbeiten und dann selbst weiter am Ball bleiben;-)
Lg freeG und danke für das super Tutorial;-)
-
Hi fr33g (netter Name),
stosse doch einfach zu unserer Truppe dazu.Im Mai starten wir mal wieder richtig durch.
Ich melde mich im ICQ demnaechst.
-
Wir suchen weitere Entwickler zur Verstärkung: http://www.c-plusplus.net/forum/286721
-
Hallo ihr fleißigen Entwickler!
Hab per google das Tutorial gefunden... Ersmal riesen Lob: So ein schweres Thema so einfach erklärt!
Naja auf jeden Fall haben die ersten Teile noch gut funktioniert... Dann wurde der C-Kernel eingeführt und da fingen meine Probleme an...
Auf jedenfall kommt was ich auch mache bei dem Linker die Fehlermeldung:
"kernel.o: file not recognized: File format not recognized"
Hier genaueres:GNU ld (GNU Binutils) 2.21
Supported emulations:
i386pe
using external linker \1:OUTPUT_FORMAT("binary")
ENTRY(RealMode)
SECTIONS
{
.text 0x8000 : {
*(.text)
}
.data : {
*(.data)
}
.bss : {
*(.bss)
}
}==================================================
attempt to open kernel.o succeeded
opened script file kernel.o
kernel.o: file not recognized: File format not recognizedBezieh mich hierbei auf Kapitel 1 des Tutorials.
Ich meine abc.w hatte auf Seite 13 vom selben Problem berichtet. leider hat seine Lösung bei mir irgendwie nicht funktioniert.
Könnte irgendeiner mir erklären wie ich das Problem wegkriege?? Bin wahrscheinlich einfach zu doof dafür......MfG fishat64
p.s. Ich bitte meine Rechtschreibung zu entschuldigen!