Universe
Universe ist als benutzerfreundliches universelles Desktop-Betriebssystem geplant. Es soll später möglich sein auf Universe Linux Applikationen auszuführen. Dieses Ziel liegt jedoch noch in weiter Ferne.
| Universe | |
|---|---|
| Entwickler: | Universe Coding Group (UCG) aka. The developers of the Universe |
| Akt. Version: | 0.8 (in Entwicklung) |
| Lizenz: | GNU GPL |
| OS-Eigenschaften | |
| Plattform: | x86,x64,ARM |
| Kernelart: | Hybrid |
| Sprache: | Assembler/C/C++ |
| API: | nativ, POSIX |
| Binärformat: | UEF,ELF,UMM |
| IPC-Methode: | Shared Memory,RPC |
| Homepage | |
Universe aktuell
Aktuell handelt es sich um einen einfachen Hybrid-Kernel mit einem kleinen Treibersatz. Es wird seit 2009 entwickelt. Der Großteil der Universe-Versionen wurden für den Real Mode entwickelt. Erst ab Version 0.7 läuft das System im Protected Mode. Die Floppy Disk Variante des Systems ohne GUI heißt Damn Disk Operating System (DDOS). Es kann sein das ich das System umbenennen werde. Das liegt vor allem daran, das man im Web vereinzelt Seiten über ein "Universe-OS" findet, die nicht von mir sind und ich Verwechselungen vermeiden möchte.
Universe Kernel 1.0 (Planung/in Arbeit)
Hybrid Kernel mit folgenden integrierten Treibern:
- Blocktreiber für Bootlaufwerk (FDC + ATA)
- Dateisystemtreiber für das Bootlaufwerk (FAT und EXT)
- DMA Treiber
- Standard Konsolen/Grafiktreiber
Diese Treiber sind in das Kernel gelinkt und sind standardmäßig verfügbar. Das System kann jedoch auch von Dateisystemen und Laufwerken gestartet werden, deren Treiber nicht direkt im Kernel verankert sind. Diese dienen lediglich dazu dem Kernel die Möglichkeit zu geben das System ohne "externe Treiber" zu nutzen und die Basisfunktionen des Kernels sicher zu gewährleisten. Die Funktionalitäten der Treiber (abgesehen der Funktionen des DMA Treibers) können auch von externen Treibern abgelöst werden.
Als "extern" werden alle Treiber Bezeichnet die nicht im Kernel integriert sind und ihre Funktionen über den Treiberinterface oder direktes IPC zur Verfügung stellen.
Interfaces:
- CDI
- POSIX API (über int $0x80, oder über einen dynamischen Syscall)
- Universe API (nur über einen dynamischen Syscall)
IPC Systeme:
- RPC
- Shared Memory
- Buffered RPC
Portierungen:
- stdlibc
- FASM