Die endgültige Präsentation stellte sich als perfekt heraus!?
1920x1080 Resolution Branch: https://github.com/imxieyi/hanaos/tree/high_resolution
Dieses Projekt soll ein einfaches Betriebssystem wie Osask mit neueren Technologien erstellen. Mit nur 2 Monaten habe ich viele kritische Teile für herkömmliche Betriebssysteme wie Paging und Benutzermodus übersprungen. So kann es beim Laufen leicht abstürzen. Da die endgültige Präsentation fertig ist, werde ich die Entwicklung hier einstellen.
Der größte Teil des Codes in C ++ 14 anstelle von reinem C, was für solche Betriebssysteme selten ist.
GRUB2 -Multiboot -Spezifikation.
32 -Bit -Farbe, bis zu 4K -Auflösung mit geeigneten Konfigurationen.
Grafikreiche Konsole mit transparentem Hintergrund.
Multitasking und Unterstützung für mehrere Fälle für eine Anwendung.
Einfach zu bedienende API, einschließlich Unterstützung von Lambda-Ausdrücken.
Ubuntu 16.04 oder höher wird empfohlen. Wenn Sie die Umgebung nicht erfolgreich einrichten können, lesen Sie bitte .travis.yml, das in Travis-CI-Behältern reibungslos ausgeführt wird.
Installieren Sie durch APT:
sudo apt update
sudo apt install nasm g++-6 g++-6-multilib make xorriso mtools qemu grub-common grub-pc
Bauen. ISO -Bild:
make iso
Die Ergebnisdatei ist er Build/hanaos.iso
Führen Sie in QEMU aus (Sie müssen zuerst QEMU manuell installieren):
make run
Wenn Sie es in VMware ausführen möchten, müssen Sie in der .vmx -Datei rtc.difffromutc = 0 hinzufügen, da VMware die lokale Zeit anstelle von UTC -Zeit als Hardware -Zeit für virtuelle Maschinen standardmäßig übergeben.
Was in Bgimg.hpp ist nur eine Tapete, die 3 MB im Kernel aufnimmt. In der 1920x1080 Branch nimmt es sogar 8 MB auf. Der Kernel ist jedoch nur ~ 70 KB ohne ihn. Aber es wirkt sich nicht auf die Leistung aus. Fühlen Sie sich frei, es zu ändern, wenn Sie es nicht mögen.
Mit der Unterstützung der Alpha -Farbmischung verbraucht das Bewegen eines großen Fensters wie Konsole große Mengen CPU, aber immer noch langsam. Seien Sie also bitte vorsichtig und bewegen Sie Ihre Maus nicht zu schnell, während Sie Fenster ziehen.
Apps sind auch mit Kernel verknüpft, da es keine Dateisysteme gibt.




