Zambesii v0.00.014 (pre-alpha development)

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
Post Reply
latentprion
Posts: 6
Joined: Fri Oct 14, 2016 12:34 am
Libera.chat IRC: latentprion

Zambesii v0.00.014 (pre-alpha development)

Post by latentprion »

Github: https://github.com/latentPrion/zambesii
  • Current dev branch: "debug" (Link here).
  • Summary of already completed improvements for the next release (v0.00.015): (Link here).
Zambesii is a fairly full-featured portable hybrid kernel project which supports a formidable array of features. The native kernel API is asynchronous and the kernel is designed to be highly scalable from the ground up, boasting support for SMP and cc-NUMA. Recently I've had little time to work on it, but I was wondering if people might be willing to tip me regular monthly funding to finish it up and do its first major public release. To explain what the merits of the project are and why people might wish to put some funding into it, I'll list off some of the value-adds that Zambesii already has, and what its ultimate goals are.

In addition, Zambesii has an almost-complete, native UDI (Uniform Driver Interface) implementation. The goal here was for me to then write a bunch of driver compatibility layers that would make it effortless to port Linux drivers to the UDI framework, and thus, drastically increase the availability of drivers for all hobbyist projects. I still have this goal.

Zambesii is not a toy project. It was developed and tested to work on Bochs, Qemu, VMWare Player, Virtual-Box, and (prior to its obsolescence) Microsoft Virtual-PC, as well as multicore real hardware machines. I was very meticulous about ensuring that it worked in as many environments as I was able to personally test on. It's not one of those "It works in Qemu only" type of "GDT + IDT + Hello World" projects. It's very much an Eleanore Semaphore type of project, because you won't be seeing any kind of flashy graphics, etc, here. I was very focused on getting the internals right. A non-exhaustive list of the features is:
  • Symmetric multiprocessing, tested on real hardware.
  • Cache-coherent Non-Uniform Memory Access, tested in Qemu only, because I have no access to a ccNUMA machine to test it on. But Geist did allow me to test on a NUMA machine at his workplace.
  • Demand paged kernel heap.
  • CPU hotplug (untested, but the code is there).
  • Memory hotplug (untested, but the support is there).
  • Multiprocessing, and multithreading.
  • Soft real-time priority-based scheduler.
  • Native Uniform Driver Interface environment implementation.
  • AP CPUs boot in parallel asynchronously. When I got this done, I remember being pretty proud of it.
This project has been dormant for about 5 years and I recently returned to it and began working on it again. It's very close to being ready for a first public release (about 85% complete), and I feel it would be a shame to for me to let it atrophy. If people respond positively and indicate that it's possible for me to find about ~USD$300 in regular funding via donations (Patreon/Paypal, etc), then I would be able to feasibly work on it and do a full release in a few months. So I'm curious if anyone finds the project interesting enough and wishes to donate to that end.

--Yours sincerely,
Latent Prion
Post Reply