{{Infobox OS | Name = FruityOrange | Logo = [[Bild:FruityOrangeLogo.png]] | Version = 0.04 | Entwickler = [[Benutzer:Micha.linuxfreak|Micha]] | Lizenz = [[Lizenz#GNU_General_Public_License|GNU General Public License]] | Kernel = [[Kernel#Monolithischer_Kernel|Monolithisch]] | API = nativ | Binaerformat = [[ELF]] | Sprache = [[C]] ([[Assembler]]) | Plattform = [[x86|i386]] | IPC = --- | Homepage = https://github.com/micha-/FruityOrange
https://code.google.com/p/fruityorange/ }} FruityOrange ist ein Betriebssystem für den [[x86|i386]], welches [[GRUB]] als Bootloader benutzt.

== Features == * printf, panic, debug * [[GDT]], [[Interrupt|Interrupts]] * [[Physische Speicherverwaltung]], [[Paging]], [[Heap]] * [[Multitasking]], Elf32-loader === Treiber === * [[Textausgabe|CGA Grafik]] ;) * [[Keyboard_Controller|Tastatur (KBC)]] * [[PIT]] * [[CMOS|CMOS / RTC]] == Syscalls == {| {{prettytable}} !Nummer (in %eax) !Name !Beschreibung !ebx !ecx !edx |- |0 |exit |Beendet das aktuelle programm |exit-Status | | |- |1 |putc |Gibt ein Zeichen auf dem Bildschirm aus |Zeichen | | |- |2 |puts |Gibt einen String auf dem Bildschirm aus |Pointer zum String |Länge des Strings | |- |3 |getch |Wartet auf einen Tastendruck |Hier wird der ASCII-Code des gedrückten Zeichens reingeschrieben | | |- |4 |gets |Liest einen String über die Tastatur ein. |Pointer zum String (muss vorher abgespeichert werden) |Länge des eingegebenen Strings (wird hier reingeschrieben) | |- |5 |usleep |Legt das Programm für %ebx Mikrosekunden schlafen |Anzahl der Mikrosekunden, die zu warten sind | | |} [[Category:Betriebssystem]]