Page 1 of 1

Ghost v0.22.2

Posted: Sat Mar 08, 2025 5:17 pm
by max
Hey everyone,

I didn't post a real update on my project for a very long - I also wasn't very active for some time - but I'm back! And I did a lot of stuff in the last months:
  • many improvements to the kernel, better memory allocator, improved system call and hardware interrupt handling, many other things
  • shared-library support, used now for most libraries, including stuff like C++ runtime & thread-local-storage
  • added a PCI & AHCI driver, so I can do SATA next and finally have a real filesystem driver
  • fixed my FPU support, which was one of the worst things to debug because it caused very random failures and it took me some time to pin it down on SSE instructions, but I think it's good now
  • added a VMSVGA driver, so in VirtualBox enable the controller for much better GUI performance
  • last thing I did is implemented a little file browser called navigator; I think the coolest part about it is that the UI programming is really simple due to libwindow, the whole navigator is just this file: https://github.com/maxdev1/ghost/blob/r ... igator.cpp
  • improved toolchain setup & automated builds on GitHub with Docker
Few fun things you can do: Browse the filesystem in the navigator, use the calculator, open a terminal and run some JavaScript; kill the desktop with the `proc` tool and start it again; read something and reverse it with `read README | reverse`

There are not many useful things yet and you will find a lot of bugs, but I'm working on it. So have fun :D

You can download the ISO here: https://github.com/maxdev1/ghost/releas ... /ghost.iso
If you want you can give me a star on the repo I'd appreciate it ♥

Image

By the way, did anyone manage to get libstdc++-v3 to build as a shared lib? Building it after building GCC even though I enable-shared, but something seems to prevent it. Glad for any tips!

Next things on my list are a system monitor to see process state and stuff; also implement user-space filesystem driver support (again) and implement an actual SATA as well as filesystem driver.

Re: Ghost v0.22.2

Posted: Mon Mar 31, 2025 2:38 pm
by AndrewAPrice
Looking good! Congrats on the release!

Re: Ghost v0.22.2

Posted: Tue May 06, 2025 2:03 am
by max
AndrewAPrice wrote: Mon Mar 31, 2025 2:38 pm Looking good! Congrats on the release!
Thank you Andrew! :)

Re: Ghost v0.22.2

Posted: Thu May 08, 2025 6:00 pm
by BenLunt
Just out of curiosity, I booted your ISO in Bochs and Bochs went to full-screen mode (1920x1080) shortly after boot, with no display to the screen. Either I didn't wait long enough to see if your code booted and displayed something, or there is something amiss with the display portion.

It could also be Bochs, since when I pressed the Alt-Enter combination to revert back to non-full screen mode, Bochs directly went back to full-screen mode. Bochs did this as an infinite loop, not allowing me to exit out of full screen mode.

And since the Bochs monitor window was on the same physical screen, I couldn't (easily) get back to the Bochs Monitor window to stop the simulation. :-)

This might be a Bochs issue and I am going to do a little investigating.

Just thought you might be curious. I'm curious if you have tried Bochs and found this same issue.

Ben
- https://www.fysnet.net/osdesign_book_series.htm