¿La presentación final resultó ser perfecta?
Rama de resolución 1920x1080: https://github.com/imxieyi/hanaos/tree/high_resolution
Este proyecto tiene como objetivo hacer un sistema operativo simple como Osask utilizando tecnologías más recientes. Con solo 2 meses para desarrollar, he omitido muchas piezas críticas para un sistema operativo tradicional como la paginación y el modo de usuario. Por lo tanto, puede bloquearse fácilmente mientras se ejecuta. Desde que ha terminado la presentación final, detendré el desarrollo aquí.
La mayor parte del código en C ++ 14 en lugar de C pura, que es rara para tales sistemas operativos.
Especificación Multiboot GRUB2.
Color de 32 bits, una resolución de hasta 4K con configuraciones apropiadas.
Consola rica en gráficos con fondo transparente.
Multitarea y soporte para varias instancias para una aplicación.
API fácil de usar que incluye soporte para expresiones Lambda.
Se recomienda Ubuntu 16.04 o superior. Si no puede configurar con éxito el entorno, consulte .travis.yml que se ejecuta suavemente en contenedores Travis-CI.
Instalar a través de APT:
sudo apt update
sudo apt install nasm g++-6 g++-6-multilib make xorriso mtools qemu grub-common grub-pc
Build .ISO Imagen:
make iso
El archivo de resultados es Build/Hanaos.iso
Ejecutar en QEMU (primero debe instalar QEMU manualmente):
make run
Si desea ejecutarlo en VMware, debe agregar rtc.difffromutc = 0 en el archivo .vmx ya que VMware pasa el tiempo local en lugar del tiempo UTC como tiempo de hardware a las máquinas virtuales de forma predeterminada.
Lo que dentro de BGIMG.HPP es solo un fondo de pantalla que ocupa 3 MB en el núcleo. En la sucursal de 1920x1080 incluso ocupa 8 MB. Sin embargo, el núcleo es solo ~ 70 kb sin él. Pero no afecta el rendimiento. Siéntase libre de modificarlo si no le gusta.
Con el soporte para la mezcla de color alfa, mover una ventana grande como la consola consume enormes cantidades de CPU pero aún lento. Así que tenga cuidado y no mueva el mouse demasiado rápido mientras arrastra Windows.
Las aplicaciones también están vinculadas con el kernel ya que no hay sistemas de archivos.




